科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道[Oracle]Data Guard数据库灾难防护(1)

[Oracle]Data Guard数据库灾难防护(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Oracle9i Data Guard 通过使用称为standby database的数据库来防止出现数据的灾难。它通过将primary database数据库的重做日志传到并应用到standby database数据库来使standby database数据库与primary database数据库同步

作者:korn 来源:赛迪论坛 2008年4月23日

关键字: 灾难防护 Oracle 9I 数据库 ORACLE

  • 评论
  • 分享微博
  • 分享邮件
 

Oracle9i Data Guard 通过使用称为standby database的数据库来防止出现数据的灾难。它通过将primary database数据库的重做日志传到并应用到standby database数据库来使standby database数据库与primary database数据库同步:
   
    可以将重做日志直接从primary database数据库同步写到standby database数据库来完成完全没有数据损失的灾难保护。这会给primary database数据库的性能带来一定的性能损失。

    可以将归档的重做日志从primary database数据库异步写到standby database数据库来使primary database数据库在极少损失性能的前提下,最小化地减少数据的丢失。

    如果重做日志数据到达standby database数据库后快速应用到standby database数据库,则在primary database数据库出现问题时可以快速地 failover 到standby database数据库。然而,如果延缓一定时间后再应用重做日志数据,可以避免primary database数据库的错误快速地传播到standby database数据库。
      
    数据库数据保护级别

    可以用如下的方式设置standby database数据库来达到不同的数据库数据保护级别:
   
    Guaranteed protection:规定在修改主数据库时,至少有一个备用数据库有效。假如主(Primary Database)备(Standby Database)之间的连接中断,Oracle会通过中断主实例的工作来防止主备数据库之间的数据的不一致,保证无数据丢失。这种模式对数据库性能的影响较大。

    Instant protection:规定在修改主数据库时,至少有一个备用数据库有效。与Guaranteed protection模式不同的是当主备数据库之间的连接中断时,允许主备数据库之间的数据的不一致,并当恢复连接后,解决数据不一致的现象。这种模式对主数据库的性能有较小的影响。 

   Rapid protection:主数据库的修改快速应用在备用数据库上。会出现数据丢失,但对数据库性能的影响小。

    Delayed protection:主数据库的修改在延迟一定的时间后应用在备用数据库上。Rapid protection和Delayed protection模式即使在网络连接有效时,也允许主数据库与所有的备用数据库有数据分歧,数据的丢失量等同于主数据库联机重做日志的未归档数。这种方式对数据库性能的影响小。 

    如何限制数据的丢失量

    在primary/standby配置下,所有的归档日志被发送到了standby 节点,这使standby 节点的数据保持着更新。但是,如果primary 数据库意外关闭,联机的日志将会丢失,因为它们尚未归档并发送到standby节点。这使得 primary 和standby 数据库之间会有一个差异。

    Oracle9i 可以用以下的方法来限制这个差异:
   
    DBA可以选择让LGWR在将重做日志数据写到本地磁盘的同时将数据发送到 standby 数据库。该功能称为standby零数据丢失(standby zero data loss)。这种方法从本质的角度讲提供了远程重做日志镜像,但带来的问题是会极大地损失性能。 

    

设置系统初始化参数ARCHIVE_LAG_TARGET。该参数是一个日志文件开始使用到被发送到standby数据库的时间间隔。该参数的推荐值是 1800秒(需要注意的是,没有传送到 standby 数据库的已经提交的事务会丢失,因此长的事务会使standby数据库损失更多的数据)。 

    Oracle9i Data Guard数据防护与Oracle8 Standby Database的关系

    Oracle Standby Database 是最经常使用的最有效的灾难解决方案。在过去版本的基础上,Oracle9i 又进行了许多改进,使其功能远远超过了基本的灾难恢复要求。通过将复杂的工作自动化,并对监控、警告、以及控制机制的大规模改进,Standby Database 和一些新的模块可以帮助DBA 从错误操作、瘫痪、以及其它的灾难中恢复(这些灾难都可能毁掉数据库)。另外,通过使用Oracle9i Standby Database,由于硬件和软件升级造成的宕机时间也可以极度缩短。

  Oracle9i 将改进过的8版本的Standby Database功能,与几个新增加的防止用户错误和瘫痪的模块合起来称为Oracle9i Data Guard。
   

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章