flash_recovery_area故障处理

上午接到地方运营平台维护人员的求助电话,oracle数据库登录失败。请求协助解决问题。

远程连接到地方数据库平台,查看报警日志:

Sat Jun  8 00:00:39 2013
Errors in file /opt/oracle/admin/HQMSS/bdump/hqmss_arc0_24312.trc:
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 42995200 bytes disk space from 21474836480 limit
ARC0: Error 19809 Creating archive log file to '/opt/oracle/flash_recovery_area/HQMSS/archivelog/2013_06_08/o1_mf_1_500_0_.arc'
ARCH: Archival stopped, error occurred. Will continue retrying
Sat Jun  8 00:00:40 2013
ORACLE Instance HQMSS - Archival Error
Sat Jun  8 00:00:40 2013
ORA-16038: log 1 sequence# 500 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 1 thread 1: '/opt/oracle/oradata/HQMSS/redo01.log'
Sat Jun  8 00:00:40 2013

初步断定,归档进程无法归档,报闪回区空间不足错误。记得这个库运行在非归档模式,怎么会报空间不足错误?

SQL> archive log list
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     523
Next log sequence to archive   525
Current log sequence           525

没错,库运行在 归档模式下。这时数据库已经挂起,归档未完成,日志无法切换。当机立断,先恢复运营问题。

启动rman,连接数据库:

1. 进入rman 
2. connect target /
3. crosscheck archivelog all;
4. delete expired archivelog all;

校验归档日志的时效与过期,将过期的归档日志删除。由于这个库维护力度不够,校验前后,闪回空间无变化。干脆执行如下命令:

RMAN>DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';删除系统里7天以前的归档数据。执行完后,闪回空间空间释放,立即全备数据库(这个库业务量不大,全备不会引起性能问题)。

 

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

转载于:http://blog.itpub.net/28985005/viewspace-764283/

你可能感兴趣的:(flash_recovery_area故障处理)