今天資料庫告警日誌報錯ORA-16038/ORA-19809/ORA-00312
new_svn> tail -f alert_ccdb.log
Errors in file /u01/app/oracle/diag/rdbms/ccdb/ccdb/trace/ccdb_ora_25560.trc:
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 92623872 bytes disk space from 5218762752 limit
ARCH: Error 19809 Creating archive log file to '/u01/app/oracle/flash_recovery_area/CCDB/archivelog/2013_06_08/o1_mf_1_332_%u_.arc'
Errors in file /u01/app/oracle/diag/rdbms/ccdb/ccdb/trace/ccdb_ora_25560.trc:
ORA-16038: log 2 sequence# 332 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/ccdb/redo02.log'
USER (ospid: 25560): terminating the instance due to error 16038
Instance terminated by USER, pid = 25560
Errors in file /u01/app/oracle/diag/rdbms/ccdb/ccdb/trace/ccdb_arc3_25915.trc:
ORA-19809: 超出了恢復檔案數的限制
ORA-19804: 無法回收 92623872 位元組磁碟空間 (從 5218762752 限制中)
故障原因:
由於初始化設定的db_recovery_file_dest_size=5G不足,導致online redo
log無法歸檔,因此可以有三種辦法解決此問題:一是修改初始化引數db_recovery_file_dest_size,增加至大於歸檔檔案總容量;二是
指定其他的歸檔日誌路徑,使歸檔日誌儲存至別處;三是備份資料庫,然後用RMAN刪除歸檔檔案
注:此問題僅針對10g及以上版本,9i沒有db_recovery_file_dest_size引數,可以直接指定路徑,也可以直接手動刪除來釋放空間。
解決方法:
RMAN
使用rman對歸檔日誌驚醒cross check
RMAN> crosscheck archivelog all;
使用rman 從資料庫記錄中刪除歸檔日誌的記錄
RMAN> delete expired archivelog all;
1:check閃回區佔用情況
SELECT substr(name, 1, 30) name, space_limit AS quota,
space_used AS used,
space_reclaimable AS reclaimable,
number_of_files AS files
FROM v$recovery_file_dest ;
sql>col file_type for a15
sql>select * from v$flash_recovery_area_usage;
計算flash recovery area已經佔用的空間:
select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;
檢視大小引數
show parameter db_recovery
2:清空閃回區
alter system set db_recovery_file_dest = '' scope=spfile;
alter system set log_archive_dest = '' scope=spfile;
alter system set log_archive_dest_1 = 'location=/oracle/app/arc' scope=spfile; //修改歸檔目錄
問題2:
ORA-16038: log 2 sequence# 332 cannot be archived
解決方法是清理redo2
SQL>alter database clear unarchived logfile group 2;
SQL>alter database open;
Errors in file /u01/app/oracle/diag/rdbms/ccdb/ccdb/trace/ccdb_ora_25560.trc:
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 92623872 bytes disk space from 5218762752 limit
ARCH: Error 19809 Creating archive log file to '/u01/app/oracle/flash_recovery_area/CCDB/archivelog/2013_06_08/o1_mf_1_332_%u_.arc'
Errors in file /u01/app/oracle/diag/rdbms/ccdb/ccdb/trace/ccdb_ora_25560.trc:
ORA-16038: log 2 sequence# 332 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/ccdb/redo02.log'
USER (ospid: 25560): terminating the instance due to error 16038
Instance terminated by USER, pid = 25560
Errors in file /u01/app/oracle/diag/rdbms/ccdb/ccdb/trace/ccdb_arc3_25915.trc:
ORA-19809: 超出了恢復檔案數的限制
ORA-19804: 無法回收 92623872 位元組磁碟空間 (從 5218762752 限制中)
故障原因:
由於初始化設定的db_recovery_file_dest_size=5G不足,導致online redo
log無法歸檔,因此可以有三種辦法解決此問題:一是修改初始化引數db_recovery_file_dest_size,增加至大於歸檔檔案總容量;二是
指定其他的歸檔日誌路徑,使歸檔日誌儲存至別處;三是備份資料庫,然後用RMAN刪除歸檔檔案
注:此問題僅針對10g及以上版本,9i沒有db_recovery_file_dest_size引數,可以直接指定路徑,也可以直接手動刪除來釋放空間。
解決方法:
RMAN
使用rman對歸檔日誌驚醒cross check
RMAN> crosscheck archivelog all;
使用rman 從資料庫記錄中刪除歸檔日誌的記錄
RMAN> delete expired archivelog all;
1:check閃回區佔用情況
SELECT substr(name, 1, 30) name, space_limit AS quota,
space_used AS used,
space_reclaimable AS reclaimable,
number_of_files AS files
FROM v$recovery_file_dest ;
sql>col file_type for a15
sql>select * from v$flash_recovery_area_usage;
計算flash recovery area已經佔用的空間:
select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;
檢視大小引數
show parameter db_recovery
2:清空閃回區
alter system set db_recovery_file_dest = '' scope=spfile;
alter system set log_archive_dest = '' scope=spfile;
alter system set log_archive_dest_1 = 'location=/oracle/app/arc' scope=spfile; //修改歸檔目錄
問題2:
ORA-16038: log 2 sequence# 332 cannot be archived
解決方法是清理redo2
SQL>alter database clear unarchived logfile group 2;
SQL>alter database open;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14661773/viewspace-763533/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle線上日誌出現錯誤 ORA-16038 ORA-19809 ORA-00312 錯誤解決Oracle
- startup資料庫報錯ORA-16038資料庫
- 如何開關資料庫告警日誌及修改日誌級別資料庫
- Oracle出現ORA-16038,ORA-19809,ORA-00312的解決方法Oracle
- 日誌和告警資料探勘經驗談
- 今天早上檢查資料庫的備份日誌,發現其中一個資料庫的expdp錯誤:資料庫
- ORA-00313 ORA-00312 redo日誌報錯處理
- MySQL資料庫中的日誌檔案---(1)錯誤日誌MySql資料庫
- 水煮十三《——ora-16038日誌檔案錯誤處理
- 【ELK】elastalert 日誌告警AST
- 告警日誌介紹
- hpux的報錯日誌UX
- oracle 10g rac 私網沒設定資料庫日誌告警解決方法Oracle資料庫
- 告警日誌出現skgpspawn failed category 27142錯誤AIGo
- RAC的告警日誌檔案
- 告警日誌出現kewastUnPackStats資訊AST
- ELK日誌告警elastalert2AST
- 資料庫日誌中Immediate Kill Session錯誤解決方法資料庫Session
- oracle資料庫mmnl日誌很大Oracle資料庫
- 分析資料庫日誌(LogMiner)資料庫
- 清除SQL Server資料庫日誌SQLServer資料庫
- 11g告警日誌中大量ORA-12170錯誤
- Oracle告警日誌ora-04030Oracle
- oracle12告警日誌檔案?Oracle
- 使用外部表管理Oracle 告警日誌Oracle
- nginx+phpfpm日誌報錯資訊NginxPHP
- oracle外部表記錄alert日誌&&資料庫執行報告Oracle資料庫
- DB2報“資料庫日誌已滿”問題解決DB2資料庫
- 瀚高資料庫日誌挖掘方法資料庫
- 資料庫映象和日誌傳送資料庫
- SQL Server 檢視資料庫日誌SQLServer資料庫
- SQLServer資料庫日誌清理 清除sqlserver2005日誌SQLServer資料庫
- 誤刪重做日誌檔案組導致啟動資料庫報錯ORA-03113資料庫
- 資料庫升級報錯資料庫
- 今天手工建立10G資料庫失敗,報ORA-12701錯誤資料庫
- 【故障處理】告警日誌報“ORA-01565 Unable To open Spfile”
- MySQL資料庫中的日誌檔案---(3)慢查詢日誌MySql資料庫
- MySQL資料庫中的日誌檔案---(2)普通查詢日誌MySql資料庫