oracle 11.2.0.4 physical standby failover
2016-07-14 14:59
531 查看
husical standby failover 11.2.0.4 on Oracle Linux5.8
1 Primary 还能mount起来的情况
Standby 的mrp程序正常开启,Primary在mount情况下,确定flush redo
Alter systemflush redo to ‘standby’;
默认是confirmapply
Ø 如果该语句正常完成,说明所有primary及online的redo都已经在standby 正常apply。可以进行failover转换,可直接进行第3步
Ø 如果该语句错误,或者由于applyredo log时间太长而终止此时要尽量将primary上的日志拷贝到standby进行apply,也就是进行第2步
2 对照primary现有archived log并apply至standby
(1) 查看standby已有最大sequence archivedlog
SELECT UNIQUE THREAD# AS THREAD, MAX(SEQUENCE#)
OVER (PARTITION BY thread#) AS LAST fromV$ARCHIVED_LOG;
然后再对比primary已有的archived log。如果在primary上还有比 standby 上max sequence更大的redo log,将其拷贝至standby,并用以下语句在standby上注册:
ALTER DATABASE REGISTER PHYSICAL LOGFILE'filespec1';
(2) 查看archivedlog gap
在standby 上用以下语句查看archived log gap
SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE#FROM V$ARCHIVE_GAP;
1 90 93
以上表示还缺少thread1的90 ,91,92,93日志。如果在primary上还能找到这些日志就像上一步一样在standby里面注册
3 stop redo apply
Alter database recover managed standby databasecancel;
4 finish redo apply
Alter database recover managed standby databasefinish;
该语句执行后,数据库将进入failover准备状态。Standby 会即可apply standby 上的redo log。
如果此语句出错,检查是否所有的日志都已经apply。如果错误无法解决采用以下语句failover
ALTER DATABASE ACTIVATE PHYSICAL STANDBYDATABASE;
5 检查standbyswitchover_status
在standby上执行
Select switchover_status from v$database;
如果是toprimary或者sessionsactive表示都可以转换
6 转换standby
在standby上执行
Alter database commit to switchover to primary withsession shutdown
7 开启 新primary
Alter database open;
1 Primary 还能mount起来的情况
Standby 的mrp程序正常开启,Primary在mount情况下,确定flush redo
Alter systemflush redo to ‘standby’;
默认是confirmapply
Ø 如果该语句正常完成,说明所有primary及online的redo都已经在standby 正常apply。可以进行failover转换,可直接进行第3步
Ø 如果该语句错误,或者由于applyredo log时间太长而终止此时要尽量将primary上的日志拷贝到standby进行apply,也就是进行第2步
2 对照primary现有archived log并apply至standby
(1) 查看standby已有最大sequence archivedlog
SELECT UNIQUE THREAD# AS THREAD, MAX(SEQUENCE#)
OVER (PARTITION BY thread#) AS LAST fromV$ARCHIVED_LOG;
然后再对比primary已有的archived log。如果在primary上还有比 standby 上max sequence更大的redo log,将其拷贝至standby,并用以下语句在standby上注册:
ALTER DATABASE REGISTER PHYSICAL LOGFILE'filespec1';
(2) 查看archivedlog gap
在standby 上用以下语句查看archived log gap
SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE#FROM V$ARCHIVE_GAP;
1 90 93
以上表示还缺少thread1的90 ,91,92,93日志。如果在primary上还能找到这些日志就像上一步一样在standby里面注册
3 stop redo apply
Alter database recover managed standby databasecancel;
4 finish redo apply
Alter database recover managed standby databasefinish;
该语句执行后,数据库将进入failover准备状态。Standby 会即可apply standby 上的redo log。
如果此语句出错,检查是否所有的日志都已经apply。如果错误无法解决采用以下语句failover
ALTER DATABASE ACTIVATE PHYSICAL STANDBYDATABASE;
5 检查standbyswitchover_status
在standby上执行
Select switchover_status from v$database;
如果是toprimary或者sessionsactive表示都可以转换
6 转换standby
在standby上执行
Alter database commit to switchover to primary withsession shutdown
7 开启 新primary
Alter database open;
相关文章推荐
- ORACLE DATAGUARD中手工处理日志v$archive_GAP的方法
- [Oracle] Data Guard 之 浅析Switchover与Failover
- Oracle 11g Dataguard参数详解
- Dataguard配置Step by Step
- GoldenGate TDM容灾方案与DataGuard容灾方案的对比
- GoldenGate数据复制的综合软件包
- 高级复制、流复制、备库的区别
- Oracle DataGuard 11gR2 之Physical Standby Database的创建
- ASA failover实例
- Oracle 10g Dataguard实施
- Oracle Dataguard 参数详解
- Oracle Dataguard 基本原理
- oracle dataguard
- 使用 RMAN DUPLICATE...FROM ACTIVE DATABASE 创建物理备用数据库的分步指南
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- Setup Microsoft Windows 2008 R2 Failover Cluster in VMware Workstation
- Failover Cluster Step-by-Step Guide: Configuring the Quorum in a Failover Cluster
- DataGuard physical standby创建与维护
- 多个地市连接MQ,如果较长时间没有消息发送,ActiveMQ的消费端会自动断开连接(topic端)
- postgresql通过repmgr搭建standby