【DG】Data Guard主備庫Failove切換

恩強Boy發表於2020-08-03

一、  思路清晰

step1: 驗證備庫狀態正常

step3: 主庫強制 shutdown

step4: 備庫停止日誌應用

step5: 備庫檢查切換狀態

step6: 備庫切換為主庫

step7: 開啟新主庫

step8: 檢視新主庫狀態

step9: 備份新主庫

二、  Failover 操作

1.  驗證備庫是否有最近的歸檔日誌

(主備庫執行)

SQL> SELECT UNIQUE THREAD# AS THREAD, MAX(SEQUENCE#) OVER (PARTITION BY thread#) AS LAST from V$ARCHIVED_LOG;

THREAD       LAST

---------- ----------

1             49

如果有結果,需要將主庫的歸檔日誌傳輸到備庫,備庫再進行註冊

SQL> ALTER DATABASE REGISTER PHYSICAL LOGFILE 'filespec1';

2.  確保備庫不存在GAP

備庫執行

SQL> SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;

THREAD#      LOW_SEQUENCE# HIGH_SEQUENCE#

---------- ------------- --------------

1            8 0              82  

如果沒有返回結果,則說明不存在GAP (斷檔);如果存在結果,則說明存在 GAP 。上述結果說明, GAP 內容包含歸檔日誌 sequence80,81,82 。需要主庫複製上述歸檔日誌,傳輸到備庫,並且註冊在備庫

SQl> ALTER DATABASE REGISTER PHYSICAL LOGFILE 'filespec1';

3.  主庫強制shutdown

SQL> shutdown abort;

4.  備庫停止日誌應用

SQL> alter database recover managed standby database  cancel;

SQL> alter database recover managed standby database finish;

5.  備庫檢查switchover_status

SQL> select switchover_status from v$database;

SWITCHOVER_STATUS

--------------------

TO PRIMARY

6.  備庫切換到主庫

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

7.  開啟新主庫

SQL> alter database open;

8.  檢視新主庫狀態

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

OPEN_MODE            DATABASE_ROLE    SWITCHOVER_STATUS

-------------------- ---------------- --------------------

READ WRITE           PRIMARY          FAILED DESTINATION

9.  備份新主庫

Oracle 建議把新主庫執行一次全庫備份。

 

 

 

---- end ----

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31529886/viewspace-2708834/,如需轉載,請註明出處,否則將追究法律責任。

相關文章