DGfailover操作.txt
备库操作
由于是failover,所以理解主库这时候已经无法正常使用,只需备库切换至pridb
1.停止MRP(关闭主动应用)
alter database recover managed standby database cancel;
2.确认备库是否做好切换到主库的准备
set lines 200
select database_role,db_unique_name,open_mode,protection_mode,protection_level,switchover_status from v$database;
查询结果为 to primary 或 sessions active说明备库做好了准备。如果查询结果不是这两个值,确认备库的日志应用是否还处于激活状态
3.重启启动MRP,完成redo应用(手动应用)。如果有gap,finish会fail。执行结束后,保护模式变成最大性能
--备库停掉redo apply
alter database recover managed standby database finish;
--备库强制停掉redo apply
alter database recover managed standby database finish force;
如果上面的sql执行失败,那么可以直接执行下面的sql
alter database activate physical standby database;
但是这可能会导致部分数据丢失,执行完上面的sql语句后直接跳到步骤5打开数据库
4.转换standbydb为primary db
alter database commit to switchover to primary with session shutdown;
5.打开新的主库
alter database open;
注意:如果之前以只读方式打开,必须重启数据库实例;
shutdown immediate
startup
============================================================
PS:failover将破坏dataguard模式,需要重新配置dataguard
alter database register physical logfile 'filespec1';
https://blog.csdn.net/zhengwei125/article/details/50675720
http://blog.itpub.net/26506993/viewspace-1850722/