ORA-16014錯誤解決(歸檔區滿)
好久前維護的一個測試庫,今天一看停留在mount狀態了:
SQL> alter database open;
alter database open
*
第 1 行出現錯誤:
ORA-16014: 日誌 3 sequence# 117 未歸檔, 沒有可用的目的地
ORA-00312: 聯機日誌 3 執行緒 1:
'E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCLJJYF2\REDO03.LOG'
資料庫在歸檔模式下,由於rman指令碼計劃任務執行出問題,未能把過期的歸檔檔案清除,造成USE_DB_RECOVERY_FILE_DEST區域被用完
SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE 0 0 0
ONLINELOG 0 0 0
ARCHIVELOG 98.86 0 44
BACKUPPIECE .39 0 1
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
已選擇6行。
在這種情況下,可以通過增大db_recovery_file_dest_size解決,也可以刪除備份集檔案和歸檔檔案:
RMAN> delete noprompt obsolete;
RMAN 保留策略將應用於該命令
將 RMAN 保留策略設定為冗餘 1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=151 devtype=DISK
未找到已廢棄的備份
RMAN> crosscheck backupset;
使用通道 ORA_DISK_1
交叉校驗備份片段: 找到為 'AVAILABLE'
備份段 handle=E:\HX\BACKUP\LEVEL0_4BOJTU25_1_1.BKP recid=134 stamp=826210385
交叉校驗備份片段: 找到為 'AVAILABLE'
備份段 handle=E:\HX\BACKUP\LEVEL0_4COJTU4E_1_1.BKP recid=135 stamp=826210459
交叉校驗備份片段: 找到為 'AVAILABLE'
備份段 handle=E:\HX\BACKUP\LEVEL0_4DOJTU60_1_1.BKP recid=136 stamp=826210516
交叉校驗備份片段: 找到為 'AVAILABLE'
………………………………………………………………………………………………………………
已交叉檢驗的 32 物件
沒有冗餘和無效的備份集,說明在rman刪除之前,歸檔檔案就把空間用完了。
SQL> select distinct CHECKPOINT_CHANGE# from v$datafile_header;
CHECKPOINT_CHANGE#
------------------
13414847
SQL> select distinct CHECKPOINT_CHANGE# from v$datafile;
CHECKPOINT_CHANGE#
------------------
13414847
1. 可以選擇手動刪除歸檔檔案,然後再用rman清除資訊:
RMAN> crosscheck archivelog all;
RMAN> delete noprompt expired archivelog all;
SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE 0 0 0
ONLINELOG 0 0 0
ARCHIVELOG 13.46 0 6
BACKUPPIECE .39 0 1
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
已選擇6行。
接著啟動資料庫:
SQL> alter database open;
資料庫已更改。
2. 如果手動修改db_recovery_file_dest_size,則如下操作:
SQL> alter system set db_recovery_file_dest_size=5G;
SQL> alter database open;
資料庫已更改。
接著,再做一次rman全備吧。
教訓:歸檔模式下一定要注意監控恢復區的使用情況,避免不必要的麻煩
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28813259/viewspace-776424/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- standby新增檔案錯誤的解決方法
- 歸檔日誌滿導致ORA-13516錯誤,awr報表不能自動收集
- Ocelot錯誤解決
- rac使用預設閃回區歸檔空間滿
- 解決 Python UnicodeEncodeError 錯誤PythonUnicodeError
- 刪除大量檔案Argument list too long錯誤解決
- dbfread報錯ValueError錯誤解決方法Error
- PbootCMS 404 錯誤解決方法boot
- Linux下錯誤解決方案Linux
- latex 錯誤以及解決方案
- HTTP 錯誤 500.19- Internal Server Error 錯誤解決方法HTTPServerError
- win10 檔案系統錯誤(-2145103860)怎麼解決Win10
- Windows下make clean指令錯誤[錯誤碼2](系統找不到指定檔案)的解決方案Windows
- steam磁碟寫入錯誤怎麼解決 steam磁碟寫入錯誤解決方法大全
- undefined reference to錯誤的解決方法Undefined
- Cocopods的升級錯誤解決
- ORA-12005 錯誤的解決
- SAXParseException的錯誤解決之二Exception
- ORA-28000錯誤解決方案
- dedecms提示500錯誤解決方法
- PHP curl error 60 錯誤解決PHPError
- linux解決“XXX is not in the sudoers file”錯誤Linux
- 解決java.lang.NoSuchMethodError錯誤JavaError
- HTTP代理錯誤怎麼解決?HTTP
- Larabel遷移檔案時報SQLSTATE[42000]錯誤的解決方法SQL
- .gitignore檔案配置以及gitee提交報Push rejected...錯誤解決Gitee
- TCP網路除錯助手提示錯誤:“1035:未知錯誤” 解決方案TCP除錯
- 錯誤碼[-718]:收集到的歸檔日誌不連續
- 解決MySQL server has gone away錯誤的解決方案MySqlServerGo
- Linux中常見的檔案讀寫錯誤問題及解決方法!Linux
- Go:錯誤 could not launch process: EOF 解決Go
- 畢設之錯誤解決辦法
- 解決 ngrok 的 Domain 錯誤問題AI
- 錯誤解決:Attempting to use uninitialized value VariableZed
- Ubuntu Cannot allocate memory 錯誤解決方案Ubuntu
- Qt報Multiple definition錯誤的解決QT
- Excel匯入null錯誤解決方式ExcelNull
- 代理508限制錯誤怎麼解決?
- Hadoop常見錯誤及解決方案Hadoop