EXPIRED和OBSOLETE的區別

season0891發表於2011-03-08
   作者 :【轉載時請務必以超連結形式標明文章原始出處和作者資訊】
                    連結:

常常混淆RMAN中EXPIRED和OBSOLETE兩個狀態,其實如果理解了兩者是如何產生的,區別也就出來了。

對於EXPIRED狀態的產生,與crosscheck命令是密切相關的,RMAN透過crosscheck命令檢查備份是否存在於備份介質上,如果不存在,則狀態由AVAILABLE改為EXPIRED。
例如這裡將控制檔案的備份刪除,再使用crosscheck進行檢查,該備份的狀態由AVAILABLE改為EXPIRED:

RMAN> list backup of controlfile;
 
 
備份集列表
===================
 
BS 關鍵字 型別 LV 大小 裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
246 Full 6.77M DISK 00:00:01 17-8-09
BP 關鍵字: 248 狀態: AVAILABLE 已壓縮: NO 標記: CONTROLFILE_BACKUP
段名:D:\RMAN_BACKUP\CF_ORCL_20090817_5_1
包括的控制檔案: Ckp SCN: 1321122 Ckp 時間: 17-8-09
 
RMAN> host "del D:\RMAN_BACKUP\CF_ORCL_20090817_5_1";
 
主機命令完成
 
RMAN> list backup of controlfile;
 
 
備份集列表
===================
 
BS 關鍵字 型別 LV 大小 裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
246 Full 6.77M DISK 00:00:01 17-8-09
BP 關鍵字: 248 狀態: AVAILABLE 已壓縮: NO 標記: CONTROLFILE_BACKUP
段名:D:\RMAN_BACKUP\CF_ORCL_20090817_5_1
包括的控制檔案: Ckp SCN: 1321122 Ckp 時間: 17-8-09
 
RMAN> crosscheck backup of controlfile;
 
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=154 devtype=DISK
交叉校驗備份段: 找到為 'EXPIRED'
備份段 handle=D:\RMAN_BACKUP\CF_ORCL_20090817_5_1 recid=5 stamp=695159773
已交叉檢驗的 1 物件
 
 
RMAN> list backup of controlfile;
 
 
備份集列表
===================
 
BS 關鍵字 型別 LV 大小 裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
246 Full 6.77M DISK 00:00:01 17-8-09
BP 關鍵字: 248 狀態: EXPIRED 已壓縮: NO 標記: CONTROLFILE_BACKUP
段名:D:\RMAN_BACKUP\CF_ORCL_20090817_5_1
包括的控制檔案: Ckp SCN: 1321122 Ckp 時間: 17-8-09

可以用delete (noprompt) expired backup of controlfile來刪除catalog中expired的備份資訊:

RMAN> delete expired backup of controlfile;
 
使用通道 ORA_DISK_1
 
備份段列表
BP 關鍵字 BS 關鍵字 Pc# Cp# 狀態 裝置型別段名稱
------- ------- --- --- ----------- ----------- ----------
248 246 1 1 EXPIRED DISK D:\RMAN_BACKUP\CF_ORCL_20090817_5_1
 
是否確定要刪除以上物件 (輸入 YES 或 NO)? NO
 
RMAN> delete noprompt expired backup of controlfile;
 
使用通道 ORA_DISK_1
 
備份段列表
BP 關鍵字 BS 關鍵字 Pc# Cp# 狀態 裝置型別段名稱
------- ------- --- --- ----------- ----------- ----------
248 246 1 1 EXPIRED DISK D:\RMAN_BACKUP\CF_ORCL_20090817_5_1
已刪除備份段
備份段 handle=D:\RMAN_BACKUP\CF_ORCL_20090817_5_1 recid=5 stamp=695159773
1 EXPIRED 物件已刪除

crosscheck還常使用於:在手工刪除歸檔日誌後,使用crosscheck進行檢查,再刪除expired狀態的歸檔資訊。

對於obsolete狀態,是針對MAN備份保留策略來說的,超過了這個保留策略的備份,會被標記為obsolete,但其狀態依舊為AVAILABLE,我們可以使用report obsolete來檢視已廢棄的備份。
例如這裡,冗餘數為1,有兩個控制檔案的備份,較早的一個備份,就會被標記為obsolete:

RMAN> show RETENTION POLICY;
 
RMAN 配置引數為:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
 
RMAN> list backup;
 
 
備份集列表
===================
 
BS 關鍵字 型別 LV 大小 裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
85 Full 6.77M DISK 00:00:02 17-8-09
BP 關鍵字: 87 狀態: AVAILABLE 已壓縮: NO 標記: CONTROLFILE_BACKUP
段名:D:\RMAN_BACKUP\CF_ORCL_20090817_3_1
包括的控制檔案: Ckp SCN: 1314053 Ckp 時間: 17-8-09
 
BS 關鍵字 型別 LV 大小 裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
112 Full 6.77M DISK 00:00:01 17-8-09
BP 關鍵字: 114 狀態: AVAILABLE 已壓縮: NO 標記: CONTROLFILE_BACKUP
段名:D:\RMAN_BACKUP\CF_ORCL_20090817_4_1
包括的控制檔案: Ckp SCN: 1314118 Ckp 時間: 17-8-09
 
RMAN> report obsolete;
 
RMAN 保留策略將應用於該命令
將 RMAN 保留策略設定為冗餘 1
已廢棄的備份和副本報表
型別 關鍵字 完成時間 檔名/控制程式碼
-------------------- ------ ------------------ --------------------
備份集 85 17-8-09
備份段 87 17-8-09 D:\RMAN_BACKUP\CF_ORCL_20090817_3_1

要真正地刪除廢棄的備份,可以使用delete noprompt obsolete命令(noprompt是指無需確認):

RMAN> delete noprompt obsolete;
 
RMAN 保留策略將應用於該命令
將 RMAN 保留策略設定為冗餘 1
使用通道 ORA_DISK_1
刪除以下已廢棄的備份和副本:
型別 關鍵字 完成時間 檔名/控制程式碼
-------------------- ------ ------------------ --------------------
備份集 85 17-8-09
備份段 87 17-8-09 D:\RMAN_BACKUP\CF_ORCL_20090817_3_1
已刪除備份段
備份段 handle=D:\RMAN_BACKUP\CF_ORCL_20090817_3_1 recid=3 stamp=695147926
1 物件已刪除
 
 
RMAN> report obsolete;
 
RMAN 保留策略將應用於該命令
將 RMAN 保留策略設定為冗餘 1
未找到已廢棄的備份
 
RMAN> list backup;
 
 
備份集列表
===================
 
BS 關鍵字 型別 LV 大小 裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
112 Full 6.77M DISK 00:00:01 17-8-09
BP 關鍵字: 114 狀態: AVAILABLE 已壓縮: NO 標記: CONTROLFILE_BACKUP
段名:D:\RMAN_BACKUP\CF_ORCL_20090817_4_1
包括的控制檔案: Ckp SCN: 1314118 Ckp 時間: 17-8-09

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-688637/,如需轉載,請註明出處,否則將追究法律責任。

相關文章