当前位置: 首页 > Oracle, oracle 10g, oracle 11g > 正文

又遇ORA-03113错误及使用RMAN删除归档日志

刚才在启动本人电脑上的ORACLE时,遇到ORA-03113错误。

SQL> startup

ORACLE 例程已经启动。
Total System Global Area 1071333376bytes
Fixed Size 1375792 bytes
Variable Size 587203024 bytes
Database Buffers 478150656 bytes
Redo Buffers 4603904 bytes
数据库装载完毕。
ORA-03113: 通信通道的文件结尾
进程 ID: 4252
会话 ID: 5序列号: 3

这个错误通常是由于磁盘空间不足导致的,看到这个报错就已经猜到是由于前几天做RMAN限速测试,打开了归档,而且前几天还加载了大量的AWR数据,导致归档路径满了,在线日志无法归档,看了下告警日志,果然如此。

Errors in file d:appstreamdiagrdbmsdbdreamdbdreamtracedbdream_ora_4252.trc:
ORA-19815: 警告: db_recovery_file_dest_size 字节 (共 12884901888 字节) 已使用 100.00%, 尚有 81920 字节可用。
... ...
Errors in file d:appstreamdiagrdbmsdbdreamdbdreamtracedbdream_arc1_5504.trc:
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 48406528 bytes disk space from 12884901888 limit
ARC1: Error 19809 Creating archive log file to 'D:APPSTREAMFLASH_RECOVERY_AREADBDREAMARCHIVELOG2013_03_29O1_MF_1_719_%U_.ARC'
... ...
Errors in file d:appstreamdiagrdbmsdbdreamdbdreamtracedbdream_arc1_5504.trc:
ORA-16038: log 2 sequence# 719 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 2 thread 1: 'D:APPSTREAMORADATADBDREAMREDO02.LOG'
... ...
Errors in file d:appstreamdiagrdbmsdbdreamdbdreamtracedbdream_ora_4252.trc:
ORA-19809: 超出了恢复文件数的限制
ORA-19804: 无法回收 48412160 字节磁盘空间 (从 12884901888 限制中)
ARCH: Error 19809 Creating archive log file to 'D:APPSTREAMFLASH_RECOVERY_AREADBDREAMARCHIVELOG2013_03_29O1_MF_1_718_%U_.ARC'
Errors in file d:appstreamdiagrdbmsdbdreamdbdreamtracedbdream_ora_4252.trc:
ORA-16038: 日志 1 sequence# 718 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 1 线程 1: 'D:APPSTREAMORADATADBDREAMREDO01.LOG'
USER (ospid: 4252): terminating the instance due to error 16038
Instance terminated by USER, pid = 4252

由于是本人的测试环境,直接把归档关了,问题也就解决了。

SQL> startup mount

ORACLE 例程已经启动。

Total System Global Area 1071333376 bytes
Fixed Size 1375792 bytes
Variable Size 587203024 bytes
Database Buffers 478150656 bytes
Redo Buffers 4603904 bytes
数据库装载完毕。
SQL> archive log list
数据库日志模式 存档模式
自动存档 启用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 718
下一个存档日志序列 718
当前日志序列 720
SQL> alter database noarchivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。

如果是生产环境,不能关闭归档,可用下面的方法解决。
1. 归档日志像我一样放到了默认地址闪回恢复区内,而且磁盘空间充足,只是受闪回恢复区大小的限制,导
致在线日志无法归档,可以调整闪回恢复区的大小来解决这个问题。

SQL> show parameter db_recover
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string D:appstreamflash_recovery_area
db_recovery_file_dest_size big integer 4G
SQL> alter system set db_recovery_file_dest_size=10g;
系统已更改。

2. 如果归档日志的路径不是闪回恢复区,而是由于磁盘空间不足导致日志无法归档,这就需要删除归档日志了。

C:Windowssystem32>rman target /
恢复管理器: Release 11.2.0.1.0 - Production on 星期五 3 月 29 10:41:19 2013
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
连接到目标数据库: DBDREAM (DBID=2326242578)
RMAN> delete archivelog until time 'sysdate-7'; --表示删除7 天前的归档日志,此时会列出所要删除的归档日志信息
是否确定要删除以上对象 (输入 YES 或 NO)? --输入YES 表示确认删除

如果不能删归档日志,那就只好更改归档日志的路径了。

SQL> alter system set log_archive_dest_1='location=D:ARCH';
系统已更改。

 

本文固定链接: http://www.dbdream.com.cn/2013/03/%e5%8f%88%e9%81%87ora-03113%e9%94%99%e8%af%af%e5%8f%8a%e4%bd%bf%e7%94%a8rman%e5%88%a0%e9%99%a4%e5%bd%92%e6%a1%a3%e6%97%a5%e5%bf%97/ | 信春哥,系统稳,闭眼上线不回滚!

该日志由 dbdream 于2013年03月29日发表在 Oracle, oracle 10g, oracle 11g 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 又遇ORA-03113错误及使用RMAN删除归档日志 | 信春哥,系统稳,闭眼上线不回滚!
关键字: , , ,

又遇ORA-03113错误及使用RMAN删除归档日志:等您坐沙发呢!

发表评论

快捷键:Ctrl+Enter