關於Oracle Dataguard 日誌傳輸狀態監控問題

ORACLE DATAGUARD的主備庫同步,主要是依靠日誌傳輸到備庫,備庫應用日誌或歸檔來實現。這篇文章主要給大家介紹了關於Oracle Dataguard 日誌傳輸狀態監控問題,感興趣的朋友跟隨小編一起看看吧

ORACLE DATAGUARD的主備庫同步,主要是依靠日誌傳輸到備庫,備庫應用日誌或歸檔來實現。當主、備庫間日誌傳輸出現GAP,備庫將不再與主庫同步。因此需對日誌傳輸狀態進行監控,確保主、備庫間日誌沒有GAP,或發現GAP後及時處理。除了在告警日誌中查看日誌同步情況外,還可以通過查看相關視圖來對日誌傳輸狀態進行監控。

1、主、備庫查看當前日誌狀況

SELECT SEQUENCE#,STATUS FROM V$LOG;

2、備庫查看RFS接收日誌和MRP應用日誌同步主庫情況

SELECT PROCESS, SEQUENCE#, STATUS, DELAY_MINS FROM V$MANAGED_STANDBY;

3、察看備庫是否和主庫同步

SELECT SEQUENCE#,STATUS FROM V$LOG;
SELECT ARCHIVED_THREAD#,ARCHIVED_SEQ#,APPLIED_THREAD#,APPLIED_SEQ# FROM V$ARCHIVE_DEST_STATUS;

4、備庫查看已經歸檔的REDO

SELECT REGISTRAR,CREATOR,THREAD#,APPLIED,SEQUENCE#,FIRST_CHANGE#,NEXT_CHANGE#, COMPLETION_TIME FROM V$ARCHIVED_LOG;

5、備庫查看已經應用的REDO

SELECT THREAD#,SEQUENCE#,FIRST_CHANGE#,NEXT_CHANGE# FROM V$LOG_HISTORY;

6、主、備庫查看是否有GAP

SELECT STATUS,GAP_STATUS FROM V$ARCHIVE_DEST_STATUS WHERE DEST_ID=2;

備庫查看

SELECT * FROM V$ARCHIVE_GAP;

主備庫查詢異常信息

SELECT T.STATUS,T.ERROR FROM V$ARCHIVE_DEST T;

【實驗總結】

通過上面這6種方法,都可以對主備庫間日誌傳輸情況進行監控。

如果日誌傳輸出現代溝(GAP),就需要及時排查問題,必要時還可以採取手工處理GAP措施。

針對6

在主庫中查詢缺失的日誌的所在路徑和名稱

SELECT NAME FROM V$ARCHIVED_LOG WHERE THREAD#=1 AND DEST_ID=1 AND SEQUENCE# BETWEEN 99 AND 109;

拷貝到備庫的相應目錄

oracle@p1a:/home/oracle/arch>scp orcl_53716_710350416.log ss1:/home/oracle/archive_gap/

手工註冊日誌文件。

SQL> ALTER DATABASE REGISTER LOGFILE '/home/oracle/archive_gap/orcl_53415_710350416.log';
Database altered.

再次查看

SQL> select * from v$archive_gap;

總結

以上所述是小編給大家介紹的關於Oracle Dataguard 日誌傳輸狀態監控問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對神馬文庫網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章