ORACLE redolog 重做日志组通常有四种状态

oracle重做日志组通常有四种状态,即unused,inactive,active,current。

1、unused:通常指从未被使用的日志组,即新添加的日志组。

2、current:状态为LGWR进程正把redo log buffer的日志写进日志组(redolog)中。

3、active:为刚刚完成日志切换后的状态,

--如果是非归档模式,此时该日志组中提交的事务引起的数据改变还没有完全从DB buffer cache写入到数据文件中,因此该日志组还不能被覆盖,并且待完全写入后变为inactive状态。

--如果数据库为归档模式,那么是在该状态下完成归档的。

 active状态只是表明,目前log buffer的数据没有向当前这个组中写数据,并不能说明这组red log的数据已经完成了归档,也可能在执行归档过程[但是通过alter system switch logfile使文件变为了active,文件已经归档了。]。
 活动的非当前日志,该日志可能已经完成归档也可能没有归档,活动的日志文件在Crash recovery(实例恢复)时会被用到。
 ACITVE状态意味着检查点尚未完成,如果日志文件循环使用再次到达该文件,数据库将处于等待的停顿状态,此时在alert文件中,可以看到类似如下记录:Checkpoint not complete。
 当这种问题出现时,可以从数据库内部通过v$session_wait来观察,该视图会显示数据库当前哪些session正处于这种等待。Checkpoint not complete在数据库中体现为等待事件log file switch(checkpoint incomplete):
 SQL> select sid,event,state from v$session_wait;---查询结果中event的值为:log file switch
 在此同时,可能DBWR进程正在进行db file parallel write,日志文件必须等待DBWR完成检查点触发的写操作之后才能被覆盖。如果设置了参数log_checkpoints_to_alert为TRUE的话,还可以在alert文件中清晰地看到检查点的增进和完成情况。

4、inactive:状态的日志可以被覆盖,可以允许写入日志。如果是在归档模式下,那么此阶段证明归档已经完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值