oracle 状态不一致,Oracle Logfile的常见不同状态

Oracle Logfile的常见不同状态

6ee5639a40442445944d63b514b2dd02.png

Logfile的不同状态

一、V$LOG:STATUS指的是GROUP的状态

UNUSED:

尚未记录change的空白group(一般会出现在,loggroup刚刚被添加,或者刚刚使用了resetlogs打开数据库,或者使用clear logfile后)

CURRENT:

当前正在被LGWR使用的group(同时是ACTIVE状态)

ACTIVE:

未被LGWR写,instance recovery需要的。还没有完成checkpoint。

INACTIVE:

online,未被LGWR写,对instance recovery不再有用了。

CLEARING:

正在被clear的group(Log

is being re-created as an empty log after an ALTER DATABASE CLEAR

LOGFILE statement. After the log is cleared, the status changes to

UNUSED.)

CLEARING_CURRENT:

一个正在被clear的CURRENT group(Current

log is being cleared of a closed thread. The log can stay in this

status if there is some failure in the switch such as an I/O error

writing the new log header.)出现在中状态一般是有错误的。

二、V$LOGFILE:STATUS指的是member的状态

INVALID:

不能使用的member,可能损坏了(另外,刚加入到redolog group的日志文件在被使用之前也是这个状态)

STALE:

见下面解释

DELETED:

被alter database drop logfile member的member

BLANK:

正常的都是blank,不管是否被写。

下面是对metalink上对stale的解释:

Log files may have a status of stale regardless of redo log mirroring or

archival mode.

Solution Description:

=====================

In general, the stale status of a redo log member should not be a cause for

great concern, unless you observe that this happens frequently or

systematically.Keep in mind that a stale log is not necessarily an invalid

log, but more of an "in-doubt" one. Once the corresponding redo group becomes

the current one again, the stale status will go away by itself.

下面是一个例子:

logfile中有两个file为stale状态,当发生日志切换时,group1变成current状态,从而,group1下的logfile变成

blank(正常状态)

另外,这个例子也展示了logfile group从active到inactive的变化。

当发生switch logfile前,group5为current状态,switch logfile后,group5变为active状态,这说明recovery时

group5是有用的,同时也说明logfile时发生的不是完全检查点。

当手工发生检查点后,group5从active变为了inactive状态,此时,group5对recovery不再有用。这说明:

alter system checkpoint发生的是完全检查点。

SQL> l

1* select * from v$logfile

SQL> /

GROUP# STATUSTYPEMEMBER

---------- ------- ------- ----------------------------------------

1 STALEONLINE/opt/oracle/oradata/userlog2/redo01.log

2 STALEONLINE/opt/oracle/oradata/userlog2/redo02.log

3ONLINE/opt/oracle/oradata/userlog2/redo03.log

4ONLINE/opt/oracle/oradata/userlog2/redo04.log

5ONLINE/opt/oracle/oradata/userlog2/redo05.log

SQL> select * from v$log;

GROUP#THREAD#SEQUENCE#BYTESMEMBERS ARC STATUSFIRST_CHANGE# FIRST_TIM

---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------

1121209715201 NOINACTIVE704228 07-AUG-06

2122209715201 NOINACTIVE753376 07-AUG-06

3123209715201 NOINACTIVE785843 07-AUG-06

4124209715201 NOINACTIVE868923 08-AUG-06

5125209715201 NOCURRENT951980 10-AUG-06

SQL> alter system switch logfile;

System altered.

SQL> select * from v$logfile;

GROUP# STATUSTYPEMEMBER

---------- ------- ------- ----------------------------------------

1ONLINE/opt/oracle/oradata/userlog2/redo01.log

2 STALEONLINE/opt/oracle/oradata/userlog2/redo02.log

3ONLINE/opt/oracle/oradata/userlog2/redo03.log

4ONLINE/opt/oracle/oradata/userlog2/redo04.log

5ONLINE/opt/oracle/oradata/userlog2/redo05.log

SQL> select * from v$log;

GROUP#THREAD#SEQUENCE#BYTESMEMBERS ARC STATUSFIRST_CHANGE# FIRST_TIM

---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------

1126209715201 NOCURRENT994126 10-AUG-06

2122209715201 NOINACTIVE753376 07-AUG-06

312320971520 1 NOINACTIVE785843 07-AUG-06

4124209715201 NOINACTIVE868923 08-AUG-06

5125209715201 NOACTIVE951980 10-AUG-06

SQL>

SQL> alter system checkpoint;

System altered.

SQL> select * from v$log;

GROUP#THREAD#SEQUENCE#BYTESMEMBERS ARC STATUSFIRST_CHANGE# FIRST_TIM

---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------

1126209715201 NOCURRENT994126 10-AUG-06

2122209715201 NOINACTIVE753376 07-AUG-06

3123209715201 NOINACTIVE785843 07-AUG-06

4124209715201 NOINACTIVE868923 08-AUG-06

5125209715201 NOINACTIVE951980 10-AUG-06

- The End-

By eygle on 2008-05-07 22:59 |

Comments (0) |

FAQ | 2705 |

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值