ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 8月1日 Monitor过程中遇到的ORA-19809问题(归档日志满了)

8月1日 Monitor过程中遇到的ORA-19809问题(归档日志满了)

原创 Linux操作系统 作者:kexiangyu 时间:2011-08-01 21:28:03 0 删除 编辑

这一周多的知识积累,终于对手头上的项目有了比较明确的思路,之前还比较一头雾水。

今天在数据采集的时候,想做一点测试,于是新建一个Session,做大规模DML操作,原本只是想把一个表的数据控制在100W行左右的,可惜多打了几次命令,长得太快了,最后这张表的数据瞬间涨到了3500W行。这么庞大的表,在做完测试的时候Drop掉,居然花了我半个小时,也没去深究是不是接下来要讨论的这个问题的原因。

就在Drop这个表的同时,我再开启了了自己写的监控程序,发现客户端程序上不来了。这个比较纠结。看listener.log,没有发现错误,说明不是listener的问题。继而转向查看alert文件。发现了错误代码

Errors in file /data2/oracle_11g/diag/rdbms/orcl/orcl/trace/orcl_arc3_16578.trc:

ORA-19809: limit exceeded for recovery files

ORA-19804: cannot reclaim 92331520 bytes disk space from 2147483648 limit

ARC3:Error 19809 Creating archive log file to '/data2/oracle_11g/flash_recovery_area/ORCL/archivelog/2011_08_01/o1_mf_1_33_%u_.arc'

Errors in file /data2/oracle_11g/diag/rdbms/orcl/orcl/trace/orcl_arc3_16578.trc:

ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.

转而根据提示查看了db_recovery_file_dest_size参数,2G,再看看db_recovery_file_dest目录,因为archive文件在这里面,猜想多半是这个问题了,一看今天的归档,吓一跳啊,就在刚才大批量DML操作的同时,归档日志瞬间满了。

找到问题的原因就好解决了,用了暂时的解决方法——修改db_recovery_file_dest_size参数,起初修改为4GAlter system set db_recovery_file_dest_size=4G scope=both;客户程序还是上来了,以为没事,谁知瞬间再次出现这个问题,一看,我了个擦,又满了。只好狠一点改成10G,后来发现光那几个DML操作居然产生了7G多的归档日志。因为是测试环境嘛,所以,关库,全备,然后删了所有的archive log,再启动,世界又恢复了和平。

总结一下这个问题的解决思路与方法。

1、  客户端程序上不来

2、  listener.log,没有错误

3、  alert.log 出现错误

Errors in file /data2/oracle_11g/diag/rdbms/orcl/orcl/trace/orcl_arc3_16578.trc:

ORA-19809: limit exceeded for recovery files

ORA-19804: cannot reclaim 92331520 bytes disk space from 2147483648 limit

ARC3:Error 19809 Creating archive log file to '/data2/oracle_11g/flash_recovery_area/ORCL/archivelog/2011_08_01/o1_mf_1_33_%u_.arc'

Errors in file /data2/oracle_11g/diag/rdbms/orcl/orcl/trace/orcl_arc3_16578.trc:

ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.

4、  查看db_recovery_file_dest_size参数,2G

5、  查看archive目录,发现已经2G

6、  Alter system set db_recovery_file_dest_size=4G scope=both;暂时解决一下问题

7、  归档日志瞬间又写进来了很多

8、  连接上来了

9、  应该做全备,清空归档日志(可以用RMAN,如果是生产库千万不要关库)

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22232708/viewspace-703769/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-07-24

  • 博文量
    4
  • 访问量
    6258