發現gap及解決

jichengjie發表於2016-12-09
發現gap及解決
1,在primary端執行
SELECT * FROM V$ARCHIVE_GAP;
THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#
----------- ------------- --------------
1 7 10


2,如果有記錄,則找出沒傳過去的log
SELECT NAME FROM V$ARCHIVED_LOG WHERE THREAD#=1 AND DEST_ID=1 AND
2> SEQUENCE# BETWEEN 7 AND 10;--假設primary端的local archive 地址配置在LOG_ARCHIVE_DEST_1


3,手工複製到standby端,再註冊
SQL> ALTER DATABASE REGISTER LOGFILE
'/physical_standby1/thread1_dest/arcr_1_7.arc';  


4,重新開始管理恢復將完成這些日誌在standby端的應用
ALTER DATABASE RECOVER MANAGED STANDBY
DATABASE

再從第一步開始檢查是否仍有其他gap,直到沒有記錄及解決完成

後記:
如果在standby端配置好fal_server,fal_client兩個引數gap問題可以自動解決,不需人工干預。
log apply service可以自動發現gap,執行在primary端的fal server程式解決gap

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

相關文章