`
sjk2013
  • 浏览: 2187361 次
文章分类
社区版块
存档分类
最新评论

flash_recovery_area过小引起的日志无法归档的处理方案

 
阅读更多

环境:

14:13:26 sys@ORCL (^ω^) select * from v$version where rownum=1;

BANNER
--------------------------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod


出问题的是个测试库,从安装到现在一直没清理过flash_recovery_area。

13:54:29 idle (^ω^) startup
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
13:54:47 idle (^ω^) shutdown abort
ORACLE 例程已经关闭。
13:55:06 idle (^ω^) startup
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             205523844 bytes
Database Buffers          398458880 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。
ORA-16038: 日志 3 序列号 48 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 3 线程 1:
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_3_7TQZWZOY_.LOG'
ORA-00312: 联机日志 3 线程 1:
'D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\ONLINELOG\O1_MF_3_7TQZX11D_.L
OG'


没有把经年累月叠成的归档日志刷到SBT上,导致flash_recovery_area空间压力,新的归档无法进去。

13:59:27 idle (^ω^) alter database clear unarchived logfile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_3_7TQZWZOY_.LOG';
alter database clear unarchived logfile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_3_7TQZWZOY_.LOG'
*
第 1 行出现错误:
ORA-01514: 日志说明中出现错误: 没有此类日志
ORA-01517: 日志成员:
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_3_7TQZWZOY_.LOG'


手动清除未归档的日志会直接报错。

14:00:37 idle (^ω^) archive log start;
已处理的语句
14:05:24 idle (^ω^) archive log next;
ORA-16014: 日志 3 的序列号 48 未归档, 没有可用的目的地
ORA-00312: 联机日志 3 线程 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_3_7TQZWZOY_.LOG'
ORA-00312: 联机日志 3 线程 1: 'D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\ONLINELOG\O1_MF_3_7TQZX11D_.LOG'
14:05:34 idle (^ω^) show parameter db_recover

NAME                                 TYPE
------------------------------------ ----------------------
VALUE
------------------------------
db_recovery_file_dest                string
D:\oracle\product\10.2.0/flash
_recovery_area
db_recovery_file_dest_size           big integer
3G
14:06:09 idle (^ω^) alter system set db_recovery_file_dest_size=4g ;

系统已更改。

14:06:51 idle (^ω^) archive log next;
已存档一个日志。
14:07:18 idle (^ω^) alter database open;

数据库已更改。


恢复完毕。

小结:在生产库上由于flash_recovery_area拥塞导致的问题可能更复杂,我们需隔三差五的对其进行“净身”。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics