Oracle Data Guard学习(1) 三种保护模式

Data Guard提供如下三种数据保护模式:

1)最高保护模式(Maximum Protection)

这里的”最高保护“是指最大限度的保护数据不丢失,也就是至少有一个standby和 primary保持实时同步,但这样做的代价很大,因为只要当一个事务提交时,不但要写到primary段的 online redo log,还有写到至少一个standby的standby redo log。这样会有一个严重的问题,就是当 standby出现故障或网络故障,导致日志无法同步时,primary数据库会被shutdown,这在生产系统中是 不可接受的,因此这种模式很少用。

2)最高性能模式(Maximum Performance)

最高性能正好和最高保护相反,当事务提交时,只要写入到primary的online redo log即可, primary几乎不受影响。然后再把redo同步到standby中,这样就无法保证primary和standby实时同步。 这种模式在实际应用中比较常见,毕竟primary不受影响是最重要的,如果出现standby落后primary太 多,DBA可以手工介入,在standby端apply redo。

3)最高可用性模式(Maximum Availability)

最高可用性模式介于前两者之间,在正常情况下,它和最高保护模式一样,但一旦standby出现故障 ,就立即切换成最高性能模式,primary不会shutdown。如果实际应用该模式,得关注一下实时应用时 对primary的性能影响。

那么如何配置及修改DG的保护模式呢?首先你要检查以下2点:

1. 主备库的db_unique_name是否唯一?

2. log_archive_config的dg_config属性是否已经包含所有的主备库db_unique_name?

以上2点确认之后,就可以使用LOG_ARCHIVE_DEST_n来配置,下表显示该参数和保护模式的关系:

从上图可以看出,最大保护和最高可用性的配置一模一样(这很正常因为最高可用性在正常情况下 就是最大保护):必须使用LGWR进程传输Redo,网络传输模式必须是sync,磁盘写选项AFFIRM,必须配 置standby redo log。

而最大性能模式比较灵活,即可以用LGWR,也可以用ARCH进程传输redo,网络即可以sync也可以 async,磁盘IO写即可以AFFIRM也可以NOAFFIRM,standby redo log也可有可无(建议有)。

上面所有的参数都确认配置无误之后,就可以用以下语句修改保护模式:

ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE {AVAILABILITY | PERFORMANCE | PROTECTION};

修改成功后,可以通过以下语句验证:

SELECT PROTECTION_MODE FROM V$DATABASE;

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

时间: 2024-12-02 06:02:37

Oracle Data Guard学习(1) 三种保护模式的相关文章

Oracle Data Guard的三种保护模式

Data Guard提供如下三种数据保护模式: 1)最高保护模式(Maximum Protection) 这里的"最大保护"是指最大限度的保护数据不丢失,也就是至少有一个standby和primary保持实时同步,但这样做的代价很大,即当一个事务提交时,不但要写到primary段的online redo log,还有写到至少一个standby的standby redo log.这样会有一个严重的问题,就是当standby出现故障或网络故障,导致日志无法同步时,primary数据库会被s

Oracle] Data Guard 之 三种保护模式介绍

Data Guard提供如下三种数据保护模式,以下是对这三种保护模式进行了详细的分析介绍,需要的朋友可以参考下   Data Guard提供如下三种数据保护模式: 1)最高保护模式(Maximum Protection)这里的"最大保护"是指最大限度的保护数据 不丢失,也就是至少有一个standby和primary保持实时同步,但这样做的代价很大,即当一个事务提交时,不但要写到primary段的 online redo log,还有写到至少一个standby的standby redo

[Oracle] Data Guard 之 三种保护模式介绍_oracle

Data Guard提供如下三种数据保护模式: 1)最高保护模式(Maximum Protection)这里的"最大保护"是指最大限度的保护数据不丢失,也就是至少有一个standby和primary保持实时同步,但这样做的代价很大,即当一个事务提交时,不但要写到primary段的online redo log,还有写到至少一个standby的standby redo log.这样会有一个严重的问题,就是当standby出现故障或网络故障,导致日志无法同步时,primary数据库会被sh

Oracle数据库 DGbroker三种保护模式的切换_oracle

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

探索Oracle11gR2 之 DataGuard_03 三种保护模式

探索Oracle11gR2 之  DataGuard_03   三种保护模式 作者:吴伟龙 Oracle的DataGuard技术有三种实现模式,分别是max performance.max availability.maxprotection这三种模式. 以下是来自Oracle文档的摘要信息: In some situations, a business cannot afford to lose data. In other situations,the availability of the

Oracle Data Guard学习(2) 日志传输

Oracle Data Guard从宏观上来说,主要提供以下两个服务: 1)日志传输:主库把生成的Redo日志传输至备库: 2)日志应用:备库应用从主库传输过来的Redo日志. 本文先介绍其中的日志传输服务,日志应用服务在下节<Data Guard 系列(3) - 日志应用>介绍 . 1. 日志传输方式 有两种日志传输方式(ARC和LGWR),第一种是采用ARC进程传输日志,其示意图如下: 注:上图来自<大话Oracle RAC> 其大致过程如下: 1)主库:日志先写入在线重做日志

Oracle Data Guard学习(3) 日志应用

在上一节<Data Guard 系列(2) - 日志传输>中,我们介绍了DG的日志传输服务,当日志从主库 传输至备库后,备库需要应用日志来保持和主库的同步,本节就来介绍日志应用服务. Redo应用 or SQL应用? 我们知道有两种类型的备库,分别是物理备库和逻辑备库,物理备库的日志应用叫做Redo应用,而 逻辑备库的日志应用叫做SQL应用. 所谓的Redo应用是指备库采用介质恢复的方式应用主库传输过来的日志,因此物理备库就像是主库 的一面镜子,不但数据一样,物理结构(如数据块.数据文件等)都

Oracle Data Guard学习(5) 创建逻辑备库

在创建逻辑备库之前,必须得先创建物理备库,关于如何创建物理备库,请参考<Data Guard 系列 (4) - 在不停主库的情况下创建物理备库>. 1. 在物理备库上停止日志应用服务 SYS@jkka> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; Database altered. 2. 重新设置主库为将来的角色转换做准备(switchover) 逻辑备库和物理备库不一样,在进行SQL应用的时候还会产生日志,即逻辑备库的

Oracle Data Guard学习(6) 角色转换

DG最核心的功能是提供高可用性的容灾,因此本节要介绍的角色转换内容是DG最重要的部分.DG主 从库间的角色切换分为以下两种: 1)Switchover Swithchover是指主从库进行角色互换(主库变备库,备库变主库),通常都是人为的.有计划的, 比如利用Switchover可以减少数据库升级的停机时间,因此不会造成数据丢失. 2) Failover Failover是指主库因为故障无法短时间内恢复,为了保证数据的可用性,备库不得不临时 充当主库的角色,如果DG的数据保护模式是最大性能模式,