ORACLE DG专题2--DG数据保护模式

开门见山

         在上篇文章,笔者介绍了ORACLE DG的数据库角色,针对不同的DG应用场景与对数据丢失的容忍程度,可以配置DG数据库的保护模式。ORACLE支持三种数据保护模式:最大可用性Maximum Availability最大性能Maximum Performance最大保护Maximum Protection。下文将详细叙述此三种保护模式的区别与使用场景。

最大可用性Maximum Availability

         此模式强调数据的可用性而又不失数据保护功能。此模式采用同步方式SYNC传输主库的重做日志,同步即意味着主库知道收到(至少一个)备库的redo确认后才提交事务;若主库不能将起重做数据流写入至少一个同步的备库,则此模式自动转化为最大性能模式以保护主库。其数据处理流程如下:

最大性能Maximum Performance

         此模式是默认的DG数据保护模式,其强调主库最大的性能而又不失数据保护功能。此模式通过感知主库的redo日志已写入即可允许主库的事务提交,后续备库的重做数据确认以异步方式传输至主库。

         由于不需要等待备库的重做确认,此模式可以最大限度的保护主库的性能。但当主库崩溃时,可能会造成少量的数据丢失,因为备库可能尚未收到主库的重做日志。其数据处理流程如下:

最大保护Maximum Protection

         最大保护模式可以确保主库故障后的零数据丢失。为提供此数据层级保护,事务的重做信息必须同时已写入主库和至少一个备库的重做日志才会提交。为确保不会发送数据丢失,当上述条件不满足时,主库直接shutdown不再对外提供服务。

         注意最大保护与最大可用的区别:最大可用模式下,若主库与所有备库断开联结,主库会继续单独运行(类似于最大性能模式),此时相当于主库一个人闯江湖,若后面主库又崩了,则其一个人闯出来的“经验”可能就都丢了;最大保护模式下,若主库与所有备库断开联结,此时主库也不干了,直接shutdown,这样至少可以保证shutdown之前的数据不会有丢失

总结

         针对不同的应用场景可能需要配置不同的保护模式或混合配置多种不同保护模式的备库,其中最大保护模式往往不会单独使用,因为若备库崩了,主库会shutdown停止服务,影响业务的连续性。

      金融核心信息和国防机密信息保护,可以配置一主+多个最大可用性备库+一最大保护备。主故障时自动切换至最大可用性备继续对外服务,只有所有最大可用性备都挂了时服务才会停止。

猜你喜欢

转载自blog.csdn.net/zhaogang1993/article/details/100806109
今日推荐