RMAN備份數據庫時,出現下面錯誤錯誤信息:
Starting backup at 25-MAY-15
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=953 devtype=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 05/25/2015 02:00:03
RMAN-06059: expected archived log not found, lost of archived log compromises recoverability
ORA-19625: error identifying file /u04/backup/archive/arch_1_40337_867612567.dbf
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
驗證發現/u04/backup/archive/arch_1_40337_867612567.dbf歸檔日志文件不存在,由於這台新的服務器,剛剛使用RMAN冷備份還原過來的。舊歸檔日志並沒有復制過來。RMAN備份采用Nocatalog方式,也就是用control file作為catalog,控制文件裡面還有這些歸檔日志文件信息,RMAN備份時會去備份這些歸檔日志,而這些舊的歸檔日志又不存在了,所以就會出現這個錯誤。可以通過下面命令解決:
1: RMAN> crosscheck archivelog all; --檢查控制文件和實際物理文件的差別。如果一些歸檔日志已經刪除或丟失,那麼設置它們為expired
2: RMAN> delete expired archivelog all; --同步控制文件的信息和實際物理文件的信息(it will delete expired archivelog and updates your controlfile)
手工刪除歸檔日志或移動了歸檔日志也會出現這個錯誤,需要手工執行crosscheck過程後,RMAN備份才能正常進行。