rman備份數據庫加上plus archivelog報錯未找到預期的存檔日志該怎么解決,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
用rman備份數據庫加上plus archivelog 備份歸檔日志 報這個錯誤
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 05/05/2014 01:00:04
RMAN-06059: expected archived log not found, loss of archived log compromises recoverability
ORA-19625: error identifying file /oracle/PRD/oraarch/PRDarch2_16336_840558852.dbf
ORA-27037: unable to obtain file status
IBM AIX RISC System/6000 Error: 2: No such file or directory
Additional information: 3
1.原因 :歸檔日志會用 rm 命令定期清除
2.原理(從網上查的資料) :
2.1在controlfile中記錄著每一個archivelog的相關信息,當我們在OS下把這些物理文件delete掉或異常變動后,在controlfile中仍然記錄著這些archivelog的信息,當我們手工清除archive目錄下的文件后,這些記錄并沒有被我們從controlfile中清除掉,也就是oracle并不知道這些文件已經不存在了!這時候我們要做手工的清除。 crosscheck archivelog all;的作用就是檢查控制文件和實際物理文件的差別。
delete expired archivelog all;就是同步控制文件的信息和實際物理文件的信息。 如果單獨執行crosscheck而沒有執行delete那么備份還是失敗的,原因是那些控制文件的信息和實際的信息還是不同。 crosscheck backupset crosscheck backupset 是檢查備份集和實際的文件 1 備份集有兩種狀態A(Available,RMAN認為該項存在于備份介質上)X(Expired,備份存在于控制文件或恢復目錄中,但
是并沒有物理存在于備份介質上)
2.2 crosscheck 的目的是檢查RMAN 的目錄以及物理文件,如果物理文件不存在于介質上,將標記為Expired。如果物理文件
存在,將維持Available。如果原先標記為Expired的備份集再次存在于備份介質上(如恢復了損壞的磁盤驅動器后),
crosscheck將把狀態重新從Expired標記回Available。
3.解決方法:在腳本中加入
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。