從9i以后,一般都不需要手工處理確實的日志,FAL自動會幫我們處理這些問題。
但是,並非我們就完全不用手工處理了,比如,你的磁盤空間爆滿,歸檔日志在傳到備庫前被轉移到其他地方,這種情況下FAL是不能解決問題的,需要手工處理一下。
下面就簡單說說手工處理日志GAP的步驟:
1、在備庫檢查是否有日志缺失
SQL> select * from V$ARCHIVE_GAP.
2、在主庫中查詢缺失的日志的所在路徑和名稱
SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE THREAD#=1 AND DEST_ID=1 AND SEQUENCE# BETWEEN 99 AND 109.
3、把日志拷貝到備庫上
$ scp 1_99_626106231.arc db_standby:/u01/archivelog/
4、在備庫上手工注冊從主庫拷貝來的日志
SQL> ALTER DATABASE REGISTER LOGFILE /u01/archivelog/1_99_626106231.arc.
5、稍等片刻,觀察備庫的alert日志信息
6、檢查備庫是否還有日志GAP
SQL> select * from V$ARCHIVE_GAP.
no rows selected.
如果有行返回,則重復2-5步,直到查詢結果是"no rows selected"。
-- END --