Data Guard 配置数据三种保护模式

本文探讨Oracle Data Guard配置中的三种数据保护模式:MAXIMUM PERFORMANCE、MAXIMUM AVAILABILITY和MAXIMUM PROTECTION,详细解析各模式的特点及适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Data Guard 配置数据三种保护模式

DG 三种保护模式(级别递增):Maximum Performance --> Maximum Availability --> Maximum Protection
 
根据oracle文档的解释,最高可用性数据保护模式需要先满足以下几个条件:
  最大保护(高):
Maximum Protection
最大可用性(中):
Maximum Availability
    最大性能(低):
Maximum Performance
重做归档进程  LGWR  LGWR LGWR | ARCH
网络传输模式  SYNC  SYNC

LGWR进程时为SYNC | ASYNC;

ARCH进程则为SYNC

磁盘写选项 AFFIRM AFFIRM AFFIRM | NOAFFIRM
是否需要备重做日志   是   是 否,但是推荐
 
注:Oracle 推荐运行在最大保护模式的DG 配置包含至少两个满足表中所列需求的备数据库。那样的话,数据库能在备数据库之一不能从主数据库接收重做数据时继续进行。

查看DG 数据库的保护模式:

SQL>select DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL from v$database;

DATABASE_ROLE    PROTECTION_MODE      PROTECTION_LEVEL

---------------- -------------------- --------------------

PRIMARY          MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE



主数据库上配置LOG_ARCHIVE_DEST_n 参数。
    在主数据库上,适当配置LOG_ARCHIVE_DEST_n 参数属性。每种 DG数据保护模式在配置中需要至少一个备库,以满足在表中列出的最小需求集。

如何配置最大可用性模式:
从max performance模式升级到max availability或max protection模式时,需要确保归档路径里的 LGWR SYNC AFFIRM
SQL> alter system set LOG_ARCHIVE_DEST_2='SERVICE=  chicago 
2> OPTIONAL LGWR SYNC AFFIRM
3> VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
4> DB_UNIQUE_NAME=  chicago ';

如果没有已经在 SPFILE 中指定,你也应该使用DB_UNIQUE_NAME 初始化参数指定唯一名字,以及在使用DG_CONFIG 属性的LOG_ARCHIVE_CONFIG上列出所有数据库。例如:
SQL> alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston)'
这将会允许动态添加一个备数据库到一个拥有运行在最大保护或最大可用性模式中的Real Application Cluster 主数据的Data Guard 配置。
 
 
第1 步如果你升级保护模式:

       只有你升级保护模式才执行这个步骤(例如,从最大性能到最大可用性模式)。否则,跳到步骤3。假定这个例子是升级 DG配置从最大性能模式到最大可用性模式。
关闭主数据库并重启到安装模式:
SQL> shutdown immediate;
SQL> startup mount;

对于Real Application Clusters 数据库,关闭所有的主实例但只启动并安装一个主实例。

第 2 步设置数据保护模式。

要指定一种数据保护模式,只需在主数据库mount状态下执行(11g可在open状态下) 下面命令即可:
SQL> alter databae set standby database to maximize {protection | availability | performance}

例如,下面的语句指定了最大可用性模式:
SQL> alter database set standby database to maximize availability;
 
第3 步打开主数据库。

如果你执行步骤1 来升级保护模式,打开数据库:
SQL> alter database open;

注意:升级保护模式只需要在主数据库上执行操作;而降级保护模式,则可在数据库打开的状态下直接操作。

第 4 步在备库上配置LOG_ARCHIVE_DEST_n 参数。

在备库上,配置LOG_ARCHIVE_DEST_n 参数属性使得配置能在切换过后继续操作在新的保护模式。例如:

SQL> alter system set LOG_ARCHIVE_DEST_2='SERVICE=boston
2> OPTIONAL LGWR SYNC AFFIRM
3> VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
4> DB_UNIQUE_NAME=boston';

第 5 步确认配置操作在新的保护模式。

查询 V$DATABASE 视图以确认Data Guard 配置操作在新的保护模式。例如:

SQL> select protection_mode, protection_level from v$database;

PROTECTION_MODE PROTECTION_LEVEL
--------------------- ---------------------
MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值