ADG主备切换switchover

1.检查主、备convert参数
show parameter db_file_name_convert
show parameter log_file_name_convert
核对主备库DB_NAME、DB_UNIQUE_NAME,并设置:
alter system set db_file_name_convert='+DATADG/{备库DB_UNIQUE_NAME}','+DATA/{DB_NAME}' scope=both sid='*';
alter system set log_file_name_convert='+DATADG/{备库DB_UNIQUE_NAME}','+DATA/{DB_NAME}' scope=both sid='*';

2.检查数据库状态
select name,open_mode,protection_mode,database_role,switchover_status from database;
注意:switchover_status为TO STANDBY表示可以切换到备库
3.检查备库同步状态
select process,status from v$managed_standby;
select name,value from v$dataguard_stats;
注意:MRPO状态为APPLYING_LOG transport_lag和apply_lag为0

4.停掉集群中其中一个节点,主备库只保留一个节点
su - grid
crsctl stat res -t
srvctl stop instance -d [集群1] -i [节点2];
或登录主库节点2 shut immediate
srvctl stop instance -d [集群2] -i [节点2];
或登录备库节点2,shut immediate

5.切换前主库verify检查
alter database switchover to [Standby_db_unique_name] VERIFY;

6.主库切换到备库
alter database switchover to [Standby_db_unique_name];

7.通过数据库日志查看过程
set lines 2000 long 2000 pagesize 2000

select * from v$diag_info;

8.查看集群状态
su - grid
crsctl stat res -t

9.将新主库从mount状态打开,查看集群状态
alter database open;
select name,open_mode,protection_mode,database_role,switchover_status from v$database;
su - grid
crsctl stat res -t

10.将新备库从mount切换到read only 
startup mount
alter database open read only;
alter database recover managed standby database using current logfile disconnect;
select name,open_mode,protection_mode,database_role,switchover_status from v$database;

11.开启集群剩下节点 
(新备库) srvctl start instance -d [集群1] -i [节点2];
  或登录新备库2节点 ,startup
(新主库) srvctl start instance -d [集群2] -i [节点2];
  或登录新主库2节点 ,startup

12.查看集群状态
  su - grid
  crsctl stat res -t
  
13.检查新备库同步状态
  su - oracle
  sqlplus / as sysdba
  select process,status from v$managed_standby;
  select name,value from v$dataguard_stats;
注意:MRPO状态为APPLYING_LOG transport_lag和apply_lag为0  

你可能感兴趣的:(数据库,oracle)