天天看点

DG日常维护切换演练

1、检验主数据库是执行切换的前提条件

(1)在主数据库上运行(RAC实例均运行)

ALTER SYSTEM ARCHIVE LOG CURRENT;

ALTER SYSTEM ARCHIVE LOG CURRENT;

ALTER SYSTEM ARCHIVE LOG CURRENT;

select THREAD#,sequence#,FIRST_TIME, NEXT_TIME from v$archived_log where DEST_ID=1 order by FIRST_TIME;

(2)在备数据库上运行

Set linesize 200

select THREAD#,SEQUENCE#,ARCHIVED,APPLIED ,FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG order by FIRST_TIME;

(3)核对1与2项输出结果,一致则关闭主、备数据库RAC中的一个实例(节点2关闭)

(4)在主数据库上运行(在此之前需要关闭所有数据库连接)

SELECT SWITCHOVER_STATUS FROM V$DATABASE;期望输出结果为:TO STANDBY或SESSION ACTIVE

(5)在备数据库上运行

SELECT SWITCHOVER_STATUS FROM V$DATABASE;期望输出结果为:NOT ALLOWED

2、在主数据库上发起切换

(1)在主数据库上发起切换。

ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN;

(2)关闭主库实例,并重启:

startup nomount;

alter database mount standby database;

alter database add standby logfile THREAD 1 group 21 ‘+ASMVG1’ size 100m;

alter database add standby logfile THREAD 2 group 31 ‘+ASMVG1’ size 100m;

3、切换物理备数据库角色到主角色

(1)检验 物理备数据库的切换状态。

SELECT SWITCHOVER_STATUS FROM V$DATABASE;期望结果:TO_PRIMARY

(2)切换物理备数据库角色到主角色。

ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;

(3)打开物理备数据库

alter database open;

ALTER SYSTEM SET log_archive_dest_2=‘SERVICE=ccupdbpri1 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=ccupdb’ SID=’*’;

alter system switch logfile;或者alter system archive log current;

4、确认备用库接收日志

新备库执行数据库追数据

(1)原主数据库启动到恢复模式

alter database open;

ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;

(2)现主数据库

ALTER SYSTEM ARCHIVE LOG CURRENT;

(3)查看现备库日志是否应用