DataGuard三种保护模式

DataGuard三种保护模式

转载 作者:bayaim 时间:2016-03-31 17:25:49 271 0删除编辑
DataGuard有三种保护模式
1.最大保护模式
2.最大可用性模式
3.最大性能模式

三种模式的配置如下


DataGuard日志传输方式如下
ARCH
    归档
LGWR
   async redolog先写入本地日志文件
         LNSn进程读取redo,传输到StandBy服务器
   sync  redolog分别写入本地和远程StandBy服务器

切换最大保护模式
1.备库停止恢复,创建StandBy logfile
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
 
alter database add standby logfile group 4 ('/home/oracle/app/oracle/fast_recovery_area/ORCL/onlinelog/standbylog1') size 50m ;
alter database add standby logfile group 5 ('/home/oracle/app/oracle/fast_recovery_area/ORCL/onlinelog/standbylog2') size 50m ;
alter database add standby logfile group 6 ('/home/oracle/app/oracle/fast_recovery_area/ORCL/onlinelog/standbylog3') size 50m ;

StandBy log的group不能和备库的redo log group重合.

2.主库重启至mount,修改保护模式
alter system set log_archive_dest_2='service=standby OPTIONAL lgwr sync affirm valid_for=(online_logfiles,primary_roles) db_unique_name=orcl' scope=both;
alter database set standby database to maximize protection;

3.验证
select dest_name,archiver from v$archive_dest;

select DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL from v$database;


在备库查看StandBy log和redo log文件
set pagesize 300
set linesize 350
col member format a120;
select f.group#,l.bytes,l.status,f.type,f.member from v$logfile f,v$log l where f.group#=l.group#
union all
select f.group#,s.bytes,s.status,f.type,f.member from v$logfile f,v$standby_log s where f.group#=s.group#;


如果备库需要实时复制,可以使用如下命令.
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE using current logfile disconnect from session;
监控复制进度
select * from v$recovery_progress;
最大保护模式,要求主备数据完全一致,在这种情况下,如果备库出现任何原因的不可用(包括网络中断),将导致主库挂起,不能进行任何操作.
    
切换最大可用性模式
主库启动至mount模式
alter system set log_archive_dest_2='service=standby OPTIONAL lgwr sync affirm valid_for=(online_logfiles,primary_roles) db_unique_name=orcl' scope=both;
alter database set standby database to maximize availability;
在最大可用性模式,如果备库不可用,不会导致主库挂起.

切换最高性能模式(默认)
alter system set log_archive_dest_2='service=standby OPTIONAL arch async noaffirm valid_for=(online_logfiles,primary_roles) db_unique_name=orcl' scope=both;
alter database set standby database to maximize performance;
 

猜你喜欢

转载自www.cnblogs.com/bayaim/p/9437258.html