管理Oracle 10g Dataguard歸檔缺口問題

       當備庫沒有接收到一個或多個歸檔重做日誌文件的時候,歸檔丟失的情況就出現了。通常情況下歸檔重做日誌文件丟失是不需要DBA手工干預的,Data Guard會自動的發現並解決這個問題的。

      在一些情況下當自動恢復沒有運行的時候就需要你手工的解決這個問題了。在Physical Standby數據庫上可以用下面的方法解決。

     1、在物理備庫上通過查詢v$archive_gap視圖來查看有哪些歸檔丟失

SQL> SELECT * FROM V$ARCHIVE_GAP;
    THREAD#  LOW_SEQUENCE#  HIGH_SEQUENCE#
-----------  -------------  --------------
          1              7              10
     從以上語句可以看到日誌文件序列從7到10丟失了。

     2、通過日誌序列查詢所丟失的文件的文件名(在主庫上查詢)

SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE THREAD#=1 AND DEST_ID=1 AND  SEQUENCE# BETWEEN 7 AND 10;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/archive_log/1_7_734705865.dbf
/u01/app/oracle/archive_log/1_8_734705865.dbf
/u01/app/oracle/archive_log/1_9_734705865.dbf
/u01/app/oracle/archive_log/1_10_734705865.dbf

     3、將上面查詢到的文件拷貝的備庫的相應位置並通過ALTER DATABASE REGISTER LOGFILE語句進行註冊


SQL> ALTER DATABASE REGISTER LOGFILE
  2  '/u01/app/oracle/archive_log/1_7_734705865.dbf';
在備庫上註冊完之後重新啓用redo apply就可以了。

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