硬碟空間被archive log佔滿


使用者打電話說ERP掛掉了,無法執行。

連線到Linux之後,檢查alert log發現I/O Error,原來硬碟已滿(100%),

心想這怎麼可能,舊的硬碟都還有空間,移轉到更大容量的新硬碟才一年多就滿了?

這次系統安裝及資料庫移轉是我執行的,明明就還有很多空間。

原來是Archive log佔滿了整個硬碟,奇怪,我明明有設定Crontab,完整備份後就刪除了呀!

(自已也有錯,沒有定時去注意空間,只注意備份有沒有成功)

不管,先解決這個問題再說。因為硬碟空間已滿,不論是sql plus、rman,都已經無法登入。

只好以Linux指令強制刪除檔案:rm -f *.arc

空間空出來之後,再登入rman,執行下列指令,刪除archive log的記錄:

rman> crosscheck archivelog all;
rman> delete expired archivelog all;

其實這樣的做法是不得已的,最好的做法是透過rman刪除檔案及記錄,例如:

RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-3';

表示刪除3天以前的所有 archivelog