归档日志填满了怎么办???


实验:
alter system set db_recovery_file_dest_size=30M scope=spfile;
--手工设置快闪恢复区为300M

重启动生效

shutdown immediate

startup


重新启动切换到归档
startup mount;
alter database archivelog;
alter database open;


show parameter db_recovery
--查看归档
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      D:\oracle\product\10.2.0\flash
                                                 _recovery_area
db_recovery_file_dest_size           big integer 30M


select recid from v$archived_log;
--刚开始,归档日志记录v$archived_log中,没有任何记录信息的


进行一些DML操作之后,就会生成redo log记录


select recid, stamp, name, sequence# from v$archived_log;


select name from v$archived_log;

Archive Redo Log写满故障现象
create table test as select *  from dba_objects;
/
/
/
在delete现在产生了一些日志信息

此时,我们观察到如下现象:
进行所有DML等生成Redo Log操作,系统无响应

此时,任何会生成Redo Log记录的操作,都不能获取到响应。Online Redo Log要保证在被下次覆写之前

,完成归档操作。由于归档空间不能实现写入,所以归档操作进程arch就被停止住,进而写redo log的动

作也会被block住。  
除sys用户外的普通用户,连接失败
当我们尝试使用非sys用户登录系统时,Oracle提出拒绝。
SQL> conn test2/test2
ERROR:
ORA-00257: archiver error. Connect internal only, until freed.

 

此时观察alert_log,可以看到错误提示。
Fri Oct 04 17:03:25 2013
ARCH: Archival stopped, error occurred. Will continue retrying
Fri Oct 04 17:03:25 2013
Errors in file d:\oracle\product\10.2.0\admin\test\bdump\test_arc1_2208.trc:
ORA-16014: log 3 sequence# 9 not archived, no available destinations
ORA-00312: online log 3 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO03.LOG'


现在用户不能登陆了,归档进程arch被停止了,redo log的动作也会被锁住现在怎么办撒???
尝试解决此类型问题,要根据不同的数据库配置环境依据不同的方法来确定。如果是生产环境,可以考虑

暂时扩大恢复区、或者直接删除归档日志之后全库备份的策略。
删除归档日志的方式上,有一些注意方面。因为归档记录是写入进控制文件Control File的,所以即使直

接从文件系统中删除,Oracle数据库也不会认为该文件已经删除。解决的方式就是使用RMAN工具。
RMAN TARGET /

crosscheck archivelog all;
--显示归档日志

delete archivelog all completed before 'sysdate';
--删当前日期的所有归档日志

此时,普通用户可以登录,其他故障现象消除。
在设置归档日志大小alter system set db_recovery_file_dest_size=2G scope=spfile;


结论:
不同的数据库结构、用途和系统要求,恢复archived log写满的方案是不同的。针对不同的结构,指定出

不同的解决策略方法;
关注归档空间策略和尽早制定解决之道。在系统切换或者计划切换到归档模式的那一刻起,就要开始针对

归档日志、空间的管理策略制度。同时,要保证时刻进行空间监控,不要等出现hange住,特别是生产环

境业务峰期hange住再解决问题;
对归档环境下的大规模dml操作要慎重,防止短时间内redo log归档生成失控;
不要贸然rm掉归档,要关注整体的备份集合状态和系统要求;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值