web服务运行一段时间之后,因为有大量的增删改查操作,导致oracle数据库异常:
ORA-00257: 归档程序错误。在释放之前仅限于内部连接。
产生这个问题的原因是oracle数据库开启了归档模式,即记录数据库操作日志。但是长时间的日志记录,导致了分配的用来存储日志信息空间使用完毕。所以oracle就抛出这个异常。
解决方法:
解决方法1:先手工删除D:\oracle\product\10.2.0\flash_recovery_area里面的
日志,
然后用户用rman进入把归档日志删除
1)命令>rman target/
2)命令>crosscheck archivelog all;/delete noprompt expired archivelog all;
其中noprompt 是不用手工确认.
3)命令>delete expired archivelog all;
4)命令>exit
delete noprompt expired archivelog all; 其中noprompt 是不用手工确认.
解决方法2:改变了FLASH_RECOVERY_AREA的大小
修改命令>alter system set db_recovery_file_dest_size=8G scope=both;
查看命令>show parameter db_recovery_file_dest_size
另外一个rman要注意地方,比如手工删除rman的备份文件,但rman认为没有删除,解决方法同理:
crosscheck backup ;
delete noprompt expired backup ;