DATAGUARD-3种保护模式切换
2014-03-27 15:55
441 查看
前面我们对DATAGUARD做了一些介绍并搭建了一个测试环境,还提到了DATAGUARD有3种保护模式,但是如何来设置这3种模式并没有提到。在这里我们将对3种模式进行介绍以及他们的配置过程。
一、三种保护模式的相关配置比较
ARCH——把完整的REDO文件拷贝到standby数据服务器上。
LGWR——ASYNC异步
redo written by LGWR to local disk
LGWR将redo写到本地LOG文件
LNSn进程读取redo,传到standby服务器上。
——SYNC同步
redo written to standby by LGWR
LGWR将redo信息直接写到standby 数据库服务器上
下面以我们前面搭建的测试环境为例,来说明一下何如来配置这3种保护模式。我们先来看看搭建环境时配置的参数:
LOG_ARCHIVE_DEST_2='SERVICE=OCM3 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=OCM3'
LGWR ASYNC ——应用在线redo方式进行数据同步,网络传输模式ASYNC(异步),从参数可以判断我们建立的DG环境使用的是最大性能模式。
从v$database视图,可以进一步的判断。
SYS@OCM3>select name,protection_mode,protection_level from v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL
--------- -------------------- --------------------
PROD MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE
二、将最大性能模式转变为最大可用模式
1、备份主备节点spfile文件
primary
SYS@OCM3>create pfile='/home/oracle/pfile_20140327.ora' from spfile;
File created.
standby
SYS@PROD>create pfile='/home/oracle/pfile_20140327.ora' from spfile;
File created.
2、取消日志传输
SYS@PROD>alter database recover managed standby database cancel;
Database altered.
3、修改相关参数
primary
SYS@OCM3>alter system set log_archive_dest_2='SERVICE=PROD LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PROD' scope=both;
System altered.
standby
SYS@PROD>alter system set log_archive_dest_2='SERVICE=OCM3 LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=OCM3' scope=both;
System altered.
4、将库修改为最大可用模式
primary
SYS@OCM3>alter database set standby database to maximize availability;
Database altered.
standby
SYS@PROD>alter database set standby database to maximize availability;
Database altered.
5、启动日志传输
SYS@PROD>alter database recover managed standby database disconnect from session;
Database altered.
6、检查保护模式
primary
SYS@OCM3>select name,protection_mode,protection_level from v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL
---------------------------------------- -------------------- --------------------
PROD MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
standby
SYS@PROD>select name,protection_mode,protection_level from v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL
--------- -------------------- --------------------
PROD MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
7、测试
在primary做两次日志切换
SYS@OCM3>alter system switch logfile;
System altered.
SYS@OCM3>alter system switch logfile;
System altered.
检查standby 的alert log 日志
-- Connected User is Valid
RFS[5]: Assigned to RFS process 29718
RFS[5]: Identified database type as 'physical standby'
Primary database is in MAXIMUM AVAILABILITY mode
Changing standby controlfile to RESYNCHRONIZATION level
Primary database is in MAXIMUM AVAILABILITY mode
Changing standby controlfile to MAXIMUM AVAILABILITY level
RFS[5]: Successfully opened standby log 5: '/u01/app/oracle/oradata/PROD/disk1/standbylog5a.log'
Thu Mar 27 14:58:33 2014
Media Recovery Log /u01/app/oracle/archlog/1_24_836758036.arc
Thu Mar 27 14:58:47 2014
Media Recovery Waiting for thread 1 sequence 25 (in transit)
Thu Mar 27 15:47:25 2014
Primary database is in MAXIMUM AVAILABILITY mode
Standby controlfile consistent with primary
RFS[5]: Successfully opened standby log 4: '/u01/app/oracle/oradata/PROD/disk1/standbylog4a.log'
Thu Mar 27 15:47:28 2014
Media Recovery Log /u01/app/oracle/archlog/1_25_836758036.arc
Media Recovery Waiting for thread 1 sequence 26 (in transit)
Thu Mar 27 15:47:53 2014
Redo Shipping Client Connected as PUBLIC
-- Connected User is Valid
RFS[6]: Assigned to RFS process 30348
RFS[6]: Identified database type as 'physical standby'
Thu Mar 27 15:49:20 2014
Primary database is in MAXIMUM AVAILABILITY mode
Standby controlfile consistent with primary
RFS[5]: Successfully opened standby log 4: '/u01/app/oracle/oradata/PROD/disk1/standbylog4a.log'
Thu Mar 27 15:49:22 2014
Media Recovery Log /u01/app/oracle/archlog/1_26_836758036.arc
Media Recovery Waiting for thread 1 sequence 27 (in transit)
检查视图
发现日志传输是成功的,到这里模式从最大性能切换到最大可用完成。
*********************************
说明:转载请注明出处,谢谢
*********************************
--End--
一、三种保护模式的相关配置比较
最大保护 | 最大可用 | 最大性能 | |
---|---|---|---|
REDO写进程 | LGWR | LGWR | LGWR或者ARCH |
网络传输模式 | SYNC | SYNC | LGWR进程时SYNC or ASYNC;ARCH进程时ASYNC |
磁盘写操作 | AFFIRM | AFFIRM | AFFIRM or NOAFFIRM |
是否需要standby redolog | YES | YES | 可没有但推荐有 |
LGWR——ASYNC异步
redo written by LGWR to local disk
LGWR将redo写到本地LOG文件
LNSn进程读取redo,传到standby服务器上。
——SYNC同步
redo written to standby by LGWR
LGWR将redo信息直接写到standby 数据库服务器上
下面以我们前面搭建的测试环境为例,来说明一下何如来配置这3种保护模式。我们先来看看搭建环境时配置的参数:
LOG_ARCHIVE_DEST_2='SERVICE=OCM3 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=OCM3'
LGWR ASYNC ——应用在线redo方式进行数据同步,网络传输模式ASYNC(异步),从参数可以判断我们建立的DG环境使用的是最大性能模式。
从v$database视图,可以进一步的判断。
SYS@OCM3>select name,protection_mode,protection_level from v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL
--------- -------------------- --------------------
PROD MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE
二、将最大性能模式转变为最大可用模式
1、备份主备节点spfile文件
primary
SYS@OCM3>create pfile='/home/oracle/pfile_20140327.ora' from spfile;
File created.
standby
SYS@PROD>create pfile='/home/oracle/pfile_20140327.ora' from spfile;
File created.
2、取消日志传输
SYS@PROD>alter database recover managed standby database cancel;
Database altered.
3、修改相关参数
primary
SYS@OCM3>alter system set log_archive_dest_2='SERVICE=PROD LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PROD' scope=both;
System altered.
standby
SYS@PROD>alter system set log_archive_dest_2='SERVICE=OCM3 LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=OCM3' scope=both;
System altered.
4、将库修改为最大可用模式
primary
SYS@OCM3>alter database set standby database to maximize availability;
Database altered.
standby
SYS@PROD>alter database set standby database to maximize availability;
Database altered.
5、启动日志传输
SYS@PROD>alter database recover managed standby database disconnect from session;
Database altered.
6、检查保护模式
primary
SYS@OCM3>select name,protection_mode,protection_level from v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL
---------------------------------------- -------------------- --------------------
PROD MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
standby
SYS@PROD>select name,protection_mode,protection_level from v$database;
NAME PROTECTION_MODE PROTECTION_LEVEL
--------- -------------------- --------------------
PROD MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
7、测试
在primary做两次日志切换
SYS@OCM3>alter system switch logfile;
System altered.
SYS@OCM3>alter system switch logfile;
System altered.
检查standby 的alert log 日志
-- Connected User is Valid
RFS[5]: Assigned to RFS process 29718
RFS[5]: Identified database type as 'physical standby'
Primary database is in MAXIMUM AVAILABILITY mode
Changing standby controlfile to RESYNCHRONIZATION level
Primary database is in MAXIMUM AVAILABILITY mode
Changing standby controlfile to MAXIMUM AVAILABILITY level
RFS[5]: Successfully opened standby log 5: '/u01/app/oracle/oradata/PROD/disk1/standbylog5a.log'
Thu Mar 27 14:58:33 2014
Media Recovery Log /u01/app/oracle/archlog/1_24_836758036.arc
Thu Mar 27 14:58:47 2014
Media Recovery Waiting for thread 1 sequence 25 (in transit)
Thu Mar 27 15:47:25 2014
Primary database is in MAXIMUM AVAILABILITY mode
Standby controlfile consistent with primary
RFS[5]: Successfully opened standby log 4: '/u01/app/oracle/oradata/PROD/disk1/standbylog4a.log'
Thu Mar 27 15:47:28 2014
Media Recovery Log /u01/app/oracle/archlog/1_25_836758036.arc
Media Recovery Waiting for thread 1 sequence 26 (in transit)
Thu Mar 27 15:47:53 2014
Redo Shipping Client Connected as PUBLIC
-- Connected User is Valid
RFS[6]: Assigned to RFS process 30348
RFS[6]: Identified database type as 'physical standby'
Thu Mar 27 15:49:20 2014
Primary database is in MAXIMUM AVAILABILITY mode
Standby controlfile consistent with primary
RFS[5]: Successfully opened standby log 4: '/u01/app/oracle/oradata/PROD/disk1/standbylog4a.log'
Thu Mar 27 15:49:22 2014
Media Recovery Log /u01/app/oracle/archlog/1_26_836758036.arc
Media Recovery Waiting for thread 1 sequence 27 (in transit)
检查视图
SYS@PROD>select sequence#,applied from v$archived_log; SEQUENCE# APP ---------- --- 2 NO 4 NO 11 YES 11 YES 12 YES 12 YES 13 YES 13 YES 14 YES 14 YES 15 YES SEQUENCE# APP ---------- --- 15 YES 16 YES 16 YES 17 YES 17 YES 18 YES 18 NO 19 YES 19 NO 20 YES 20 NO SEQUENCE# APP ---------- --- 21 YES 22 YES 23 YES 24 YES 25 YES 26 YES 28 rows selected.
发现日志传输是成功的,到这里模式从最大性能切换到最大可用完成。
*********************************
说明:转载请注明出处,谢谢
*********************************
--End--
相关文章推荐
- DataGuard保护模式介绍及切换示例
- ORACLE 11G dataguard安装配置手册--单实例物理standby 三种保护模式互相切换
- dataguard保护模式切换(PROTECTION | AVAILABILITY | PERFORMANCE)
- dataguard 切换保护模式
- DataGuard 数据保护模式切换
- oracle 11g DataGuard 数据保护模式切换
- dataguard的保护模式转化和主从切换
- [terry笔记]11gR2_dataguard_保护模式切换
- dataguard保护模式切换(PROTECTION | AVAILABILITY | PERFORMANCE)
- 如何调试从实模式切换到保护模式的程序
- 实模式切换到保护模式,为什么要开启A20地址线(系统升级产生的兼容性问题)
- oracle 10g dataguard修改保护模式遭遇ORA-03113
- 【Oracle】DG三种保护模式及切换方式
- Oracle数据库 DGbroker三种保护模式的切换
- DataGuard 三种保护模式
- 实模式、保护模式的区别 实模式保护模式切换方法
- 实模式切换到保护模式,为什么要开启A20地址线(系统升级产生的兼容性问题)
- 保护模式及其编程——实模式与保护模式的切换
- 一步一步学DataGuard(22)Standby之选择数据保护模式
- 【PM复习】从保护模式切换回实模式