物理Data Guard角色轉換步驟
Step 1 驗證主庫是否能執行角色轉換到備庫(原主庫執行)
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
-----------------
TO STANDBY
1 row selected
Step 2 開始把物理主庫改變爲物理備庫(原主庫執行)
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;
或
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY with session shutdown;
注:如果有活動的session可以使用此選項,否則轉換會遇到ORA-01093錯誤,也可以殺掉活動會話或等活動會話後進行轉換
Step 3 關閉並重啓主庫(原主庫執行)
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
Step 4 驗證備庫是否能執行角色轉換到主庫(原備庫執行)
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
-----------------
TO_PRIMARY
1 row selected
Step 5 開始把物理備庫轉換成物理主庫(原備庫執行)
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
--如果報ORA-16139: media recovery required,可能是由於未應用日誌引起,可先執行
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Step 6 打開備庫,然後關閉重啓.(原備庫執行)
SQL> ALTER DATABASE OPEN;
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;
Step 7 驗證是否轉換成功(原備庫執行)
SQL> ALTER SYSTEM SWITCH LOGFILE;
Setp 8 應用歸檔日誌(原主庫上執行)
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;