首页 > Oracle > ora-xxxxx > ORA-00257: archiver error. Connect internal only, until freed.
2014
05-24

ORA-00257: archiver error. Connect internal only, until freed.

小编在自己的测试环境中,在往test表插入数据的时候,往表中循环插入数据的时候,总数是290W,但在最后一次插入的时候,一直没有成功,系统hang住了,用另外一个session登陆这个测试用户的时候,提示ORA-00257: archiver error. Connect internal only, until freed.错误,显示归档日志已满,等待释放,随即检查了一下数据库归档的设置。

1. 查看archive log所在位置和大小

2. 数据库使用默认的USE_DB_RECOVERY_FILE_DEST存储归档日志,Flash recovery area占用2.9985,因为是测试环境,数据库归档没有详细设置,且比较小,需要把以前没用的过期的归档删掉。使用RMAN方式来删除归档,需要用rman来维护控制文件

3. 归档总共有67个对象,下面删除过期的归档,删除前一天的归档

4. 在删除了不用的归档之后,被hang住的session里面insert成功了,再次查看Flash recovery area 使用情况

ok, 使用率已经降下来了,被hang住的sql也成功提交了,这里出现的主要问题就是归档没有设置适当,数据库来不及归档,可以适当增大redo log,就不会这么频繁的切换归档了。

最后编辑:
作者:Jerry
一个积极向上的小青年,热衷于分享--Focus on DB,BI,ETL