手動處理DataGuard間隔

hooca發表於2014-12-31
一般情況下,如果由網路中斷導致的間隔,在網路恢復後,將繼續同步。但如果缺失了歸檔日誌,將肯定無法同步。

這時就需要使用RMAN增量備份。

檢視間隔狀態:

點選(此處)摺疊或開啟

  1. SELECT * FROM V$ARCHIVE_GAP;

   THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
---------- ------------- --------------
         1           428            429

上例顯示了執行緒1,從428到429日誌序列缺失。如果沒有任何缺失,上例查詢不顯示結果。

下面開始恢復:

1)停止Redo Apply

點選(此處)摺疊或開啟

  1. alter database recover managed standby database cancel;
2)確認Standby當前SCN

點選(此處)摺疊或開啟

  1. SELECT CURRENT_SCN FROM V$DATABASE;

CURRENT_SCN
-----------
    2057725

3)在Primary做RMAN增量備份

點選(此處)摺疊或開啟

  1. RMAN>
  2. run
  3. {
  4. allocate channel d1 type disk;
  5. allocate channel d2 type disk;
  6. backup incremental from scn 2057725 database format
  7. '/oradata/backup/SHANGHAI_%U';
  8. release channel d1;
  9. release channel d2;
  10. }

4)在Primary建立新備用控制檔案

點選(此處)摺疊或開啟

  1. alter database create standby controlfile as '/tmp/std.ctl';

5)將備份集和備用控制檔案傳到Standby上
關閉Standby資料庫

6)在Standby的RMAN中將備份集編入目錄

點選(此處)摺疊或開啟

  1. RMAN>
  2. CATALOG START WITH '/oradata/backup';

7) 使用noredo增量恢復Standby資料庫

點選(此處)摺疊或開啟

  1. STARTUP FORCE NOMOUNT;
  2. RESTORE STANDBY CONTROLFILE FROM '/tmp/std.ctl';
    ALTER DATABASE MOUNT;
    RECOVER DATABASE NOREDO;

有問題,沒成功!
實際做的時候需要看文件。

感覺文件中的命令是針對使用了RMAN恢復目錄的,如果沒有用恢復目錄,需要設定SET NEWNAME。
可參考以下適用於9i的文件:290817.1






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

相關文章