問題描述:刪除歸檔的備份,在進行歸檔的從新備份,提示:skipping archived logs of thread 1 from sequence 29 to 46; already backed up,這個也不算報錯,接着以前的ORA-19625數據庫
1.進行備份,可是提示我歸檔已經存在,可是我已經把備份全都物理刪除了,rm * /u01/app/oracle/oradata/Backup 已經刪除過Backup下全部的備份,包括這些歸檔,可是提示過下邊這些歸檔已經存在,很奇怪oracle
而後個人備份路徑下只有數據庫的備份文件,沒有歸檔備份?所有刪掉重來app
2.查看rman備份的歸檔信息,然而這個路徑下是沒有任何文件的,在以後find這個bak也是沒有找到的3d
RMAN> list backup of archivelog all;orm
3.重啓,重啓完從新執行如下腳本,這裏頗有意思,看起來沒有問題。blog
run{
allocate channel ch_1 type disk;
backup database format '/u01/app/oracle/oradata/Backup/database_$t_%u_%c.bak'';
backup archivelog all format '/u01/app/oracle/oradata/Backup/archive_$t_%u_%c.bak';
}ip
4.可是下邊這個就不明白了,我就已經刪除歸檔備份了,怎麼還有這幾個歸檔已經有備份了,直接被跳過了,並且歸檔文件是存在的。這裏是我重啓完數據庫,並且shutdown immediate了一次數據庫,要注意的是這時會產生歸檔文件,因此數據庫備份的是我shutdown產生的一次歸檔文件,以前的該跳過仍是跳過了form
5.後來才知道這個緣由,物理刪除歸檔備份,數據庫是知道的,可是控制文件是還有記錄的,這個單詞一開始不知道什麼意思,此次可記住了」過時「!thread
RMAN> crosscheck backup; 這裏查看一下全部的備份,這裏的備份是EXPIRED過時的,可是控制文件不知道,下邊就要告訴控制文件語法
RMAN> delete expired backup; 刪除掉過時的備份,選擇yes
6.在此進行備份,第無數次備份了,這裏須要注意的是最好一行一行來,點擊回車系統會檢測你的語法,備份成功
7.查看一下備份的文件,這裏的歸檔備份是沒有問題的,當時調整了show all命令的參數,設置成了兩個備份歸檔保留數,先記錄一下,忽略一下show all裏邊設置路徑%_後邊的錯誤語法,沒有改過來,這裏回頭再研究一下