今天早晨打开alter_XX.log 。看了一下日志,发现了两个错误,昨天刚使用rman 的delete archivelog all,delete obsolete backup,把控制文件里面的日志记录删除和备份过期的文件删除,这个错也是昨天产生的。就想总结一下处理过程:
使用 cat /XXX/XXX/XXX/XXX/bdump/alter_zdtdb.log|grep -i ora-
ORA-16014: log 2 sequence# 10353 not archived, no available destinations
ORA-00312: online log 2 thread 1: '/data/app/oracle/oradata/zdtdb/redo02.log'
接下来看了一下参数;
SQL> show parameter db_recovery_file
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /data/app/oracle/flash_recovery_area
db_recovery_file_dest_size big integer 6G
我靠,6G,很大啦。
1. 增加Flash recovery Area 大小。 这种方法治标不治本。 当满了之后,还是会增加。
SQL> alter system set db_recovery_file_dest_size=3G scope=both;
系统已更改。
检查flash recovery area的使用情况:
SQL> select * from v$flash_recovery_area_usage;
计算flash recovery area已经占用的空间:
SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;
2. 也可以删除归档目录中不用的备份或者文件。
删除archive log:
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;
删除备份:
RMAN>delete obsolete;