我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢!
由于博客中有大量代码,通过页面浏览效果更佳。
故障处理:ORA-19809: limit exceeded for recovery files
欢迎大家加入ORACLE超级群:17115662 免费解决各种ORACLE问题,以后BLOG将迁移到http://www.htz.pw
常常会遇到下面的报错信息:
ARCH: Error 19809 Creating archive log file to ‘/oracle/app/oracle/fast_recovery_area/ORCL1124/archivelog/2014_06_05/o1_mf_1_113_%u_.arc’ARC1: Error 19809 Creating archive log file to ‘/oracle/app/oracle/fast_recovery_area/ORCL1124/archivelog/2014_06_05/o1_mf_1_114_%u_.arc’Errors in file /oracle/app/oracle/diag/rdbms/orcl1124/orcl1124/trace/orcl1124_ora_22611.trc:ORA-16038: log 2 sequence# 113 cannot be archivedORA-19809: limit exceeded for recovery filesORA-00312: online log 2 thread 1: ‘/oracle/app/oracle/oradata/orcl1124/redo02.log’ARCH: Archival stopped, error occurred. Will continue retryingORACLE Instance orcl1124 – Archival ErrorORA-16038: log 3 sequence# 114 cannot be archivedORA-19809: limit exceeded for recovery filesORA-00312: online log 3 thread 1: ‘/oracle/app/oracle/oradata/orcl1124/redo03.log’System state dump requested by (instance=1, osid=22611), summary=[abnormal instance termination].System State dumped to trace file /oracle/app/oracle/diag/rdbms/orcl1124/orcl1124/trace/orcl1124_diag_22544_20140605180150.trcDumping diagnostic data in directory=[cdmp_20140605180150], requested by (instance=1, osid=22611), summary=[abnormal instance termination].USER (ospid: 22611): terminating the instance due to error 16038Instance terminated by USER, pid = 22611
原因很简单:归档目录满了,解决的方法也很多的
1,如果归档存放在FRA区,修改一个FRA区的大小就可以了,前提是FRA目录上还有剩余的空间。
2,使用单独的归档目录,扩一下文件系统或者将归档路径修改到其它的地方就可以了。
3,下面我们测试另一种方法
3.1,启动数据库报错
[oracle@www.htz.pw oradata]$sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Thu Jun 5 18:01:30 2014Copyright (c) 1982, 2013, Oracle. All rights reserved.Connected to an idle instance.www.htz.pw > startupORACLE instance started.Total System Global Area 379965440 bytesFixed Size 2253464 bytesVariable Size 171969896 bytesDatabase Buffers 201326592 bytesRedo Buffers 4415488 bytesDatabase mounted.ORA-03113: end-of-file on communication channelProcess ID: 22611Session ID: 1 Serial number: 5
3.2,alert中报下面的错误
ORA-19815: WARNING: db_recovery_file_dest_size of 4385144832 bytes is 100.00% used, and has 0 remaining bytes available.************************************************************************You have following choices to free up space from recovery area:1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,then consider changing RMAN ARCHIVELOG DELETION POLICY.2. Back up files to tertiary device such as tape using RMANBACKUP RECOVERY AREA command.3. Add disk space and increase db_recovery_file_dest_size parameter toreflect the new space.4. Delete unnecessary files using RMAN DELETE command. If an operatingsystem command was used to delete files, then use RMAN CROSSCHECK andDELETE EXPIRED commands.************************************************************************ARCH: Error 19809 Creating archive log file to ‘/oracle/app/oracle/fast_recovery_area/ORCL1124/archivelog/2014_06_05/o1_mf_1_113_%u_.arc’ARC1: Error 19809 Creating archive log file to ‘/oracle/app/oracle/fast_recovery_area/ORCL1124/archivelog/2014_06_05/o1_mf_1_114_%u_.arc’Errors in file /oracle/app/oracle/diag/rdbms/orcl1124/orcl1124/trace/orcl1124_ora_22611.trc:ORA-16038: log 2 sequence# 113 cannot be archivedORA-19809: limit exceeded for recovery filesORA-00312: online log 2 thread 1: ‘/oracle/app/oracle/oradata/orcl1124/redo02.log’ARCH: Archival stopped, error occurred. Will continue retryingORACLE Instance orcl1124 – Archival ErrorORA-16038: log 3 sequence# 114 cannot be archivedORA-19809: limit exceeded for recovery filesORA-00312: online log 3 thread 1: ‘/oracle/app/oracle/oradata/orcl1124/redo03.log’System state dump requested by (instance=1, osid=22611), summary=[abnormal instance termination].System State dumped to trace file /oracle/app/oracle/diag/rdbms/orcl1124/orcl1124/trace/orcl1124_diag_22544_20140605180150.trcDumping diagnostic data in directory=[cdmp_20140605180150], requested by (instance=1, osid=22611), summary=[abnormal instance termination].USER (ospid: 22611): terminating the instance due to error 16038Instance terminated by USER, pid = 22611
3.3,下面将归档库更改为非归档就可以正常启动了
我做的事情增加了resetlog的方式,在生产环境这里可以使用noresetlogs的方式就可以了,因为我们只是更改一下归档模式的。
CREATE CONTROLFILE REUSE DATABASE "ORCL1124" RESETLOGS NOARCHIVELOGMAXLOGFILES 16MAXLOGMEMBERS 3MAXDATAFILES 100MAXINSTANCES 8MAXLOGHISTORY 292LOGFILEGROUP 1 ‘/oracle/app/oracle/oradata/orcl1124/redo01.log’ SIZE 50M BLOCKSIZE 512,GROUP 2 ‘/oracle/app/oracle/oradata/orcl1124/redo02.log’ SIZE 50M BLOCKSIZE 512,GROUP 3 ‘/oracle/app/oracle/oradata/orcl1124/redo03.log’ SIZE 50M BLOCKSIZE 512— STANDBY LOGFILEDATAFILE‘/oracle/app/oracle/oradata/orcl1124/system01.dbf’,‘/oracle/app/oracle/oradata/orcl1124/sysaux01.dbf’,‘/oracle/app/oracle/oradata/orcl1124/undotbs01.dbf’,‘/oracle/app/oracle/oradata/orcl1124/users01.dbf’,‘/oracle/app/oracle/oradata/orcl1124/htz01.dbf’,‘/oracle/app/oracle/oradata/orcl1124/undotbs02.dbf’CHARACTER SET ZHS16GBK;www.htz.pw > recover database using backup controlfile until cancel;ORA-00279: change 2795841 generated at 06/05/2014 17:52:39 needed for thread 1ORA-00289: suggestion :/oracle/app/oracle/fast_recovery_area/ORCL1124/archivelog/2014_06_05/o1_mf_1_115_%u_.arcORA-00280: change 2795841 for thread 1 is in sequence #115Specify log: {<RET>=suggested | filename | AUTO | CANCEL}/oracle/app/oracle/oradata/orcl1124/redo03.logORA-00310: archived log contains sequence 114; sequence 115 requiredORA-00334: archived log: ‘/oracle/app/oracle/oradata/orcl1124/redo03.log’www.htz.pw > recover database using backup controlfile until cancel;ORA-00279: change 2795841 generated at 06/05/2014 17:52:39 needed for thread 1ORA-00289: suggestion :/oracle/app/oracle/fast_recovery_area/ORCL1124/archivelog/2014_06_05/o1_mf_1_115_%u_.arcORA-00280: change 2795841 for thread 1 is in sequence #115Specify log: {<RET>=suggested | filename | AUTO | CANCEL}/oracle/app/oracle/oradata/orcl1124/redo01.logLog applied.Media recovery complete.
这里一定要手动输入日志路径,不然可以会丢失数据,或者遇到其它的报错的。
www.htz.pw > alter database open resetlogs;Database altered.www.htz.pw > archive log list;Database log mode No Archive ModeAutomatic archival DisabledArchive destination USE_DB_RECOVERY_FILE_DESTOldest online log sequence 1Current log sequence 1
------------------作者介绍-----------------------
姓名:黄廷忠
现就职:Oracle中国高级服务团队
曾就职:OceanBase、云和恩墨、东方龙马等
电话、微信、QQ:18081072613
个人博客: (http://www.htz.pw)
CSDN地址: (https://blog.csdn.net/wwwhtzpw)
博客园地址: (https://www.cnblogs.com/www-htz-pw)