Dataguard三种保护模式

Oracle Data Guard 提供三种高水平的数据保护模式来平衡成本、可用性、性能和事务保护。可以使用任意可用管理界面来轻松地设置这些模式。要确定适当的数据保护模式,企业需要根据用户对系统响应时间的要求来估量它们对数据保护的业务要求。下表从数据丢失风险的角度概述了各种模式的适用性。


保护模式


在出现灾难时数据丢失的风险


重做传输机制


最大保护


零数据丢失;双重故障保护


LGWR SYNC


最高可用性


零数据丢失;单故障保护


LGWR SYNC


最高性能


最小数据丢失 — 通常从 0 到几秒


LGWR SYNC /ASYNC 或 ARCH SYNC

10g中,物理Standby和逻辑Standby都支持这三种模式。

可以在V$DATABASE中查看到DataGuard的保护模式

SELECT PROTECTION_MODE, PROTECTION_LEVEL FROM V$DATABASE;

1.1 最大保护模式:

最大保护模式为主数据库提供了最高水平的数据保护,从而确保了一个全面的零数据丢失灾难恢复解决方案。当在最大保护模式下运行时,重做记录由日志写入进程从主数据库同步地传输到备用数据库,并且直到确认事务数据在至少一个备用服务器上的磁盘上可用时,才在主数据库上提交事务。这种模式必须配置至少两个备用数据库,从而提供双重故障保护。当最后参与的备用数据库不可用时,主数据库上的处理将停止。这就确保了当主数据库与其所有备用数据库失去联系时,不会丢失事务。

该模式下,主库和备库完全一致,在主库事务提交前,备库必须收到全部日志数据,如果因网络等原因导致日志无法传送时,将引起严重的性能问题,导致主节点宕机。此时备库不能正常关闭,必须保持和主库一致的模式,如果强行采用abort方式关闭备用数据库,可能引发主库挂起。推荐配置至少2个备库,因为如果其中一个不能从主库接收日志,主库还可继续运行。要保证备库的监听正常,保证主库到备库的连接正常。

1.2 最大可用模式:

10g时该模式利用LNSn进程传送日志,备库必须添加Standby Redo Log。最高可用性模式拥有仅次于主数据库数据可用性,并提供零数据丢失和防止单组件故障。如同最大保护模式一样,重做数据由日志写入进程从主数据库同步地传输到备用数据库,直到确认事务数据在备用服务器的磁盘上可用时,事务才在主数据库上完成。不过,在这种模式下(与最大保护模式不同),如果最后参与的备用数据库变为不可用 — 例如由于网络连接问题,处理将在主数据库上继续进行。备用数据库与主数据库相比,可能暂时落在后面,但当它再次变为可用时,备用数据库将自动同步,而不会丢失数据。由于同步重做传输,这种保护模式可潜在地影响响应时间和吞吐量。可以通过配置一个低延迟网络,并为它分配足够应付高峰事务负载的带宽来将这种影响减到最小。最高可用性模式适用于想要在生产站点上出现严重中断时(假定没有其他故障)确保获得零数据丢失保护,但不想让生产数据库受网络/备用服务器故障影响的企业。与最大保护模式一样,采用LGWR方式传送,并且必须有standby redo log。为防止备用库发生网络故障,最好设置reopen参数,即使出现网络故障,也不会引发主库挂起,这时主库将从最大可用模式切换到最大性能模式。该模式下,允许数据分歧,允许异步传送。正常情况运行在最大保护模式下,在主库和备库之间网络断开或连接不正常时,自动切换到最大性能模式,主节点的操作继续,但这种自动切换是否及时是否高效,当前行内并无实际检验,因此在网络不好的情况下,也可能会有较大的性能影响。

1.3 最大性能模式:

最高性能模式是默认的保护模式。它与最高可用性模式相比,提供了稍微少一些的主数据库数据保护,但提供了更高的性能。在这种模式下,当主数据库处理事务时,重做数据由日志写入进程异步传输到备用数据库上。另外,也可以将主数据库上的归档进程配置为在这种模式下传输重做数据。在任何情况下,均先完成主数据库上的写操作,主数据库的提交操作不等待备用数据库确认接收。如果任意备用目标数据库变为不可用,则处理将在主数据库上继续进行,这对性能只有很小的影响或没有影响。不过在这种情况下,数据库告警日志将记录错误消息,并可以通过 Enterprise Manager 相应地设置告警。在主数据库出现故障的情况下,可能有一些在主数据库上提交了的事务没有传输到备用数据库中。如果网络有足够的吞吐量来跟上重做流量高峰,则丢失的事务将非常少或者为零。当主数据库上的可用性和性能比丢失少量数据的风险更重要时,应该使用最高性能模式。这种模式还适合于 WAN 上的 Data Guard 部署,在 WAN 中,网络的内在延迟可能限制同步重做传输的适用性。在创建Data Guard时,默认创建的是最大性能模式,需要使用其他模式时必须再进行切换。该模式下,利用ARCn进程异步传送日志,无数据同步检查,可能丢失数据,但是能获得主库的最佳性能。

1.3.1  使用推荐

推荐使用最大性能模式。

1.4 其他介绍

1.4.1  Real-Time Apply和Redo Apply

Redo信息传送到备库后,默认是Redo Apply方式,在最大保护模式下,确认redo信息传送到备机后主库提交,但并非立即在备库启用,而是等待主库发生redo日志切换后再在备库应用。最大性能模式下发生redo日志切换后,ARCn才将该日志传送至备库应用。在这种方式下允许设置日志应用的延迟时间间隔(delay)。当备库切换为生产前,需要首先应用已传送到备库但尚未被应用的redo(除非强制切换)。Real-TimeApply方式要求必须有Standby log file(默认最大性能模式下不必创建),此时Redo信息传送到备库后被立即应用,此模式下如果有delay设置将被忽略。该方式可以提高备库转为生产的速度。

对Redo Apply增加数据文件后,需要切换日志,备用数据库才能产生文件。

对Real-TimeApply增加数据文件后,备用数据库很快就能产生文件。

推荐在无delay需求的情况下,使用Real-Time Apply方式;在有delay需求的情况下,使用Redo Apply方式。

在物理备用数据库上查看,是否real-time applyredo log

SQL> select  recovery_mode from v$archive_dest_status;

1.4.2  Delay的设置及确认

在一些情况下,会想在重做数据从主站点接收到它应用到备数据库的时间之间创建一个时间延迟。允许设置DELAY 指定时间间隔(分钟)来保护损坏或错误的数据的应用到备数据库。设置后,重做数据传输到备数据库不会有延迟,指定的时间延迟从重做数据完整地归档后开始。

使用LOG_ARCHIVE_DEST_n 初始化参数的DELAY=minutes 属性,在主和备数据库上设置时间延迟来延迟应用归档重做日志文件到备数据库。默认没有时间延迟。如果指定DELAY 而没有指定一个值,默认的延迟间隔是30 分钟。

取消时间延迟:

对于物理备数据库,使用 RECOVER MANAGED STANDBY DATABASE 字句的NODELAY关键词:

ALTERDATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;

时间: 2024-08-04 13:03:29

Dataguard三种保护模式的相关文章

Boss要求零数据丢失,Data Guard的三种保护模式如何选择?

公司现在越来越重视数据的灾备,部署了大量的Data Guard和Oracle GoldenGate.核心系统的数据非常重要,大boss的要求很简单就是数据零丢失. 仔细衡量Data Guard的三种保护模式,在最大可用和最大保护之间展开了激烈的讨论.下面从技术层面看看这两种保护模式的特点和区别. 零数据丢失: 在DataGuard中同步传输SYNC(synchronous transport)又称为零数据丢失.因为要等到确认事务恢复所需要的redo数据已经被写入备用数据库的磁盘上(Standby

DGbroker三种保护模式的切换

1.三种保护模式 – Maximum protection 在Maximum protection下, 可以保证从库和主库数据完全一样,做到zero data loss.事务同时在主从两边提交完成,才算事务完成.如果从库宕机或者网络出现问题,主从库不能通讯,主库也立即宕机.在这种方式下,具有最高的保护等级.但是这种模式对主库性能影响很大,要求高速的网络连接. – Maximum availability 在Maximum availability模式下,如果和从库的连接正常,运行方式等同Maxi

【DG】Data Guard 的三种保护模式

Data Guard 的三种保护模式 官方文档链接 http://docs.oracle.com/cd/E11882_01/server.112/e41134/protection.htm#SBYDB02000 最大可用模式(Maximum Availability) 这种保护模式在不影响主库可用性的前提下提供最高水平的数据保护 在主库需要完成两件事,事务才会被提交 恢复事务所需要的 redo 数据写入在线日志文件(online redo log) 恢复事务所需要的 redo 数据写入同步备库(

vsftpd服务程序的三种认证模式

vsftpd服务程序的三种认证模式的配置方法--匿名开放模式.本地用户模式以及虚拟用户模式.了解PAM可插拔认证模块的原理.作用以及实战配置方法,通过实战课程进一步继续学习SELinux服务的配置方法,扩展学习TFTP简单文件传输协议理论及实操课程 文件传输协议 一般来讲,人们将电脑联网的首要需求就是获取资料,而文件传输是其中非常重要的方式之一,21世纪的互联网是由几千万台个人电脑.工作站.小型机.大型机等等不同型号.架构的物理设备共同组成的,即便是个人电脑上也可能会装有诸如Linux.Wind

云计算三种服务模式SaaS、PaaS和IaaS及其之间关系(顺带CaaS、MaaS)

云计算架构图 很明显,这五者之间主要的区别在于第一个单词,而aaS都是as-a-service(即服务)的意思,这五个模式都是近年来兴起的,且这五者都是云计算的落地产品,所以我们先来了解一下云计算是什么. 1.云计算是什么?云计算(cloud computing)是基于互联网的相关服务的增加.使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源.云是网络.互联网的一种比喻说法.云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强大的计算能力可以模拟核爆炸.预测气候变化和市

php的public、protected、private三种访问控制模式的区别 self,parent

php的public.protected.private三种访问控制模式的区别 public: 公有类型 在子类中可以通过self::var调用public方法或属性,parent::method调用父类方法 在实例中可以能过$obj->var 来调用 public类型的方法或属性 protected: 受保护类型        在子类中可以通过self::var调用protected方法或属性,parent::method调用父类方法 在实例中不能通过$obj->var 来调用  prote

初识云计算的三种服务模式 (IaaS SaaS PaaS)

最近公司在使用其他云服务的同时,要封装自己的云服务,下面作为开发产品前的热身,来了解云计算中的三种服务模式,笔者也是从网络上查找,进行综合总结.请拍.. 三种服务模式 根据现在最常用,也就是比较权威的NIST(National Institute of Standard and Technology)美国国家标准技术研究院定义,云计算主要分为三种服务模式,而且这三层的分法重要是从用户体验的角度出发的: IaaS IaaS全拼是Infrastructure as a Service,基础设置即服务

php中的public、protected、private三种访问控制模式及self和parent的区别(转)

php的public.protected.private三种访问控制模式的区别 public: 公有类型 在子类中可以通过self::var调用public方法或属性,parent::method调用父类方法 在实例中可以能过$obj->var 来调用 public类型的方法或属性 protected: 受保护类型 在子类中可以通过self::var调用protected方法或属性,parent::method调用父类方法 在实例中不能通过$obj->var 来调用 protected类型的方

SQL Server数据库的三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式

SQL Server数据库的三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式 这篇文章主要介绍了SQL Server数据库的三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式,需要的朋友可以参考下 如何图形界面下修改恢复模式 找到你想修改的数据库 右键 > 属性  > 左侧 选项既可看到 1.Simple 简单恢复模式, Simple模式的旧称叫"Checkpoint with truncate log",其实这个名字更形象,在Simple模式下,SQ