Backup
由於無法回收磁碟空間,恢復文件超出限制導致備份失敗RM_一個_-03009,奧拉-19809,奧拉-19804____R米一種ñ−03009,○R一種−19809,○R一種−19804RMAN-03009,ORA-19809,ORA-198…
雖然我嘗試使用命令進行增量備份級別 0
RMAN>備份增量0級數據庫加歸檔日誌;
,遇到了這個錯誤。
RMAN-00571:============================================== ============== RMAN-00569:=============== 錯誤消息堆棧跟隨 =============== RMAN-00571:============================================== ============== RMAN-03009:ORA_DISK_1 通道上的備份命令失敗,時間為 2013 年 8 月 27 日 15:58: 05 ORA-19809: 超出恢復文件的限制 ORA-19804: 無法從 4327473152 限制中回收 52428800 字節磁碟空間
當我瀏覽一些論壇時,我找到了很多解決方案,但是當我查看他們的情況時,它並不匹配。
- 一種解決方案是增加 db_recovery 空間。所以我檢查了空間並得到了這個結果。
db_recovery 大小
SQL> 顯示參數 db_recovery; 名稱類型值 ------------------------------------ ----------- ------------------------------ db_recovery_file_dest 字元串 /u01/app/oracle/fast_recovery_ 區域 db_recovery_file_dest_size 大整數 4127M
空間使用
SQL> select SPACE_USED,SPACE_LIMIT from v$recovery_file_dest; SPACE_USED SPACE_LIMIT ---------- ----------- 800155136 4327473152
可用空間
SQL>選擇 NAME, TO_CHAR(SPACE_LIMIT, '999,999,999,999') AS SPACE_LIMIT, TO_CHAR(SPACE_LIMIT - SPACE_USED + SPACE_RECLAIMABLE, '999,999,999,999') 作為 SPACE_AVAILABLE, ROUND((SPACE_USED - SPACE_RECLAIMABLE)/SPACE_LIMIT * 100, 1) AS PERCENT_FULL 從 V$RECOVERY_FILE_DEST; NAME -------------------------------------------------------------------------------- SPACE_LIMIT SPACE_AVAILABLE PERCENT_FULL ---------------- ---------------- ------------ /u01/app/oracle/fast_recovery_area 4,327,473,152 3,488,460,800 19.4
從 RMAN
RMAN> 全部顯示; 具有 db_unique_name AGGE 的數據庫的 RMAN 配置參數是: 將保留政策配置為冗餘 1;# 預設 配置備份優化關閉;# 預設 將預設設備類型配置到磁碟;# 預設 配置控製文件自動備份關閉;# 預設 將設備類型磁碟的控製文件自動備份格式配置為“%F”;# 預設 配置設備類型磁碟並行 1 備份類型到備份;# 預設 將設備類型磁碟的數據文件備份副本配置為 1;# 預設 將設備類型磁碟的存檔日誌備份副本配置為 1;# 預設 將 MAXSETSIZE 配置為無限;# 預設 為數據庫關閉配置加密;# 預設 配置加密算法“AES128”;# 預設 配置壓縮算法“基本”作為發布“預設”優化負載真;# 預設 將歸檔日誌刪除策略配置為無;# 預設 將快照控製文件名稱配置為“/u01/app/oracle/product/11.2.0/db_1/dbs/snapcf_agge.f”;# 預設
我應該怎麼做才能解決這個問題?即使我有這麼多空間,我是否還必須增加恢復空間?
在 RHEL5 中使用 ORACLE 11G R2
包括
db_recovery_file_dest
各種文件,包括線上和歸檔重做日誌文件;查看 Oracle Backup and Recovery 使用者指南第 5 章,找出最佳解決方案;禁用db_recovery_file_dest
不是一個好主意。你可以試試RMAN> report obsolete;
RMAN 命令查看可以刪除的內容。然後做一個
delete obsolete
刪除它們。您是否定義了任何保證還原點?RMAN> list restore point all;
如果您看到任何類型為 GUARANTEED 的結果,如果不再需要它們,請將它們刪除:
SQL> DROP RESTORE POINT before_app_upgrade;
是否啟用了閃回數據庫?
我面臨著完全相同的問題。我也嘗試了上面提到的選項,但無濟於事。最後,按照朋友的建議,禁用
db_recovery_file_dest
解決了我的問題。SQL> alter system set db_recovery_file_dest='' scope=both;