DG中模拟failover故障与恢复「建议收藏」

DG中模拟failover故障与恢复「建议收藏」问题描述:情形是当主库真正出现异常之后,才会执行的操作,那么我们执行过failover 之后,如何在重新构建DG,这里我们利用flashback database来重构。模拟前主库要开启闪回

问题描述:情形是当主库真正出现异常之后,才会执行的操作,那么我们执行过failover 之后,如何在重新构建DG,这里我们利用flashback database来重构。模拟前主库要开启闪回区,否则要重新搭建DG了

1.由于主库已经不可访问,下面所有的操作都在备库完成,先取消实时同步

SQL> alter database recover managed standby database cancel;

DG中模拟failover故障与恢复「建议收藏」

 

 

 2.强制取消redo接收

DG中模拟failover故障与恢复「建议收藏」

 

 

 3.确认一下备库

DG中模拟failover故障与恢复「建议收藏」

 

 

4.切换为物理主库,然后open,确认一下切换成功,因为原先的主库还没有关闭,可能会产生一些连接,所以现在的状态是GAP,至此failover操作完成,原来的备库已经切换为主库,可以给业务提供服务了

SQL> alter database commit to switchover to primary with session shutdown;

SQL> alter database open;

SQL> select switchover_status,database_role,open_mode from v$database;

DG中模拟failover故障与恢复「建议收藏」

 

 

5.failover恢复,在新的主库执行,查询到scn值

SQL> select to_char(standby_became_primary_scn) from v$database;

DG中模拟failover故障与恢复「建议收藏」

 

 

 6.在之前的主库现在的备库上执行,我的之前是startup状态,调整一下现在备库的状态

SQL> shutdown immediate

SQL> startup mount

DG中模拟failover故障与恢复「建议收藏」

 

 

 7.恢复闪回区scn值

SQL> flashback database to scn 1388059

DG中模拟failover故障与恢复「建议收藏」

 

 

 8.更改状态

SQL> alter database convert to physical standby;

DG中模拟failover故障与恢复「建议收藏」

 

 

 SQL> shutdown immediate

SQL> startup

DG中模拟failover故障与恢复「建议收藏」

 

 

 9.开启实时同步

SQL> alter database recover managed standby database using current logfile disconnect from session;

DG中模拟failover故障与恢复「建议收藏」

 

 

 10.分别查看一下主备库的切换状态,以及数据库角色是否正常

SQL> select switchover_status,database_role,open_mode from v$database;

现在的备库:

DG中模拟failover故障与恢复「建议收藏」

 

 

 现在的主库:已经不再显示GAP,现在指向备库,到此failover结束

DG中模拟failover故障与恢复「建议收藏」

 

11.相关命令

停止实时同步:SQL> alter database recover managed standby database cancel;

强制停掉redo apply:SQL> alter database recover managed standby database finish force;         //危险操作,一旦执行,rfs、mrp进程就会停掉

转换物理备库:SQL> alter database commit to switchover to primary with session shutdown;

查询状态角色:SQL> select switchover_status,database_role,open_mode from v$database;

查询SCN号   :SQL> select to_char(standby_became_primary_scn) from v$database;

闪回到序列号:SQL> flashback database to scn 1388059

切换主库为备库:SQL> alter database convert to physical standby;

开启实时同步:SQL> alter database recover managed standby database using current logfile disconnect from session;

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10631.html

(0)
上一篇 2022-12-24
下一篇 2022-12-24

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注