日志最常见的状态有以下几种:CURRENT , ACTIVE , INACTIVE ,UNUSED
2013-07-08 22:57
429 查看
文档地址:http://docs.oracle.com/cd/B19306_01/server.102/b14231/onlineredo.htm#sthref872
Redo log files that are required for instance recovery arecalled active redo log files. Redo log files that areno longer required for instance recovery are calledinactive redo logfiles.
If you have enabled archiving (the database is in
is disabled (the database is in
日志最常见的状态有以下几种:CURRENT , ACTIVE , INACTIVE ,UNUSED
1.CURRENT 指当前的日志文件,该日志文件是活动的,当前正在被使用的,在进
行崩溃恢复时Current 的日志文件是必须的。
2. ACTIVE 日志是活动的非当前日志,该日志可能已经完成归档也可能没有归档,
活动的日志文件在Crash 恢复时会被用到。Active 状态意味着,检查点尚未完
成,如果日志文件循环使用再次到达该文件,数据库将处于等待的停顿状态,
当这种问题出现时,可以从数据库内部通过v$session_wait 来观察,该视图会
显示数据库当前哪些Sesssion 正处于这种等待。Checkpoint not complete 在
数据库中体现为等待事件log file switch(checkpoint incomplete):select
sid,event,state from v$session_wait;同时要注意DBWR 进程正在执行db file
parallel write,日志文件必须等待DBWR 完成检查点触发的写操作之后才能被
覆盖。如果设置了参数log_checkpoints_to_alter 为True 的话,还可以在alert
文件中清晰地看到检查点的增进和完成情况.
可以对这个问题做一下简单的分析,Checkpoint incomplete 有多种可能原因:
·日志文件过小,切换过于频繁;
·日志组太少,不能满足正常事务量的需要;
·日志文件所在磁盘I/O 存在瓶颈,导致写出缓慢,阻塞数据库正常运行;
·由于数据文件磁盘I/O 瓶颈,DBWR 写出过于缓慢;
·由于事务量巨大,DBWR 负荷过高,不堪重负。
针对不同的原因,又可以从不同角度着手解决问题:
·适当增加日志文件大小;
·适当增加日志组数;
·使用更快速磁盘存储日志文件(如:采用更高转速磁盘;使用RAID10 而不是
RAID5 等方式);
·改善磁盘I/O 性能;
·使用多个DBWR 进程或使用异步I/O 等。
3.INACTIVE 是非活动日志,该日志在实例恢复时不再需要,但是在介质恢复时
可能会用到。INACTIVE 状态的日志也可能没有被归档。如果数据库启动在归档
模式,在未完成归档之前,日志文件也不允许被覆盖,这时活动进程处于log file
switch(archiving needed)等待之中。日志是否完成归档,可以根据
V$LOG.ARCHIVED 字段进行判断,ARCHIVED 状态为NO,也就是尚未归档:所有DML
事务都将挂起,用户处于log file switch(archiving needed)等待,通常是由
数据库异常引起的,可能是因为I/O 缓慢,也可能是因为事务量过大,在特殊情
况下,有可能是因为日志损坏。
4.UNUSED 表示该日志从未被写入,这类日志可能是刚被添加到数据库或者在
RESETLOGS 之后被重置。被使用之后,该状态会被改变。
Active (Current) and Inactive Redo Log Files
Oracle Database uses only one redo log files at atime to store redo records written from the redo log buffer. Theredo log file that LGWR is actively writing to is called thecurrent redo log file.Redo log files that are required for instance recovery arecalled active redo log files. Redo log files that areno longer required for instance recovery are calledinactive redo logfiles.
If you have enabled archiving (the database is in
ARCHIVELOGmode), then the database cannot reuse oroverwrite an active online log file until one of the archiverbackground processes (ARCn) has archived its contents.If archiving
is disabled (the database is in
NOARCHIVELOGmode), then when the last redo log fileis full, LGWR continues by overwriting the first available activefile.
日志最常见的状态有以下几种:CURRENT , ACTIVE , INACTIVE ,UNUSED
1.CURRENT 指当前的日志文件,该日志文件是活动的,当前正在被使用的,在进
行崩溃恢复时Current 的日志文件是必须的。
2. ACTIVE 日志是活动的非当前日志,该日志可能已经完成归档也可能没有归档,
活动的日志文件在Crash 恢复时会被用到。Active 状态意味着,检查点尚未完
成,如果日志文件循环使用再次到达该文件,数据库将处于等待的停顿状态,
当这种问题出现时,可以从数据库内部通过v$session_wait 来观察,该视图会
显示数据库当前哪些Sesssion 正处于这种等待。Checkpoint not complete 在
数据库中体现为等待事件log file switch(checkpoint incomplete):select
sid,event,state from v$session_wait;同时要注意DBWR 进程正在执行db file
parallel write,日志文件必须等待DBWR 完成检查点触发的写操作之后才能被
覆盖。如果设置了参数log_checkpoints_to_alter 为True 的话,还可以在alert
文件中清晰地看到检查点的增进和完成情况.
可以对这个问题做一下简单的分析,Checkpoint incomplete 有多种可能原因:
·日志文件过小,切换过于频繁;
·日志组太少,不能满足正常事务量的需要;
·日志文件所在磁盘I/O 存在瓶颈,导致写出缓慢,阻塞数据库正常运行;
·由于数据文件磁盘I/O 瓶颈,DBWR 写出过于缓慢;
·由于事务量巨大,DBWR 负荷过高,不堪重负。
针对不同的原因,又可以从不同角度着手解决问题:
·适当增加日志文件大小;
·适当增加日志组数;
·使用更快速磁盘存储日志文件(如:采用更高转速磁盘;使用RAID10 而不是
RAID5 等方式);
·改善磁盘I/O 性能;
·使用多个DBWR 进程或使用异步I/O 等。
3.INACTIVE 是非活动日志,该日志在实例恢复时不再需要,但是在介质恢复时
可能会用到。INACTIVE 状态的日志也可能没有被归档。如果数据库启动在归档
模式,在未完成归档之前,日志文件也不允许被覆盖,这时活动进程处于log file
switch(archiving needed)等待之中。日志是否完成归档,可以根据
V$LOG.ARCHIVED 字段进行判断,ARCHIVED 状态为NO,也就是尚未归档:所有DML
事务都将挂起,用户处于log file switch(archiving needed)等待,通常是由
数据库异常引起的,可能是因为I/O 缓慢,也可能是因为事务量过大,在特殊情
况下,有可能是因为日志损坏。
4.UNUSED 表示该日志从未被写入,这类日志可能是刚被添加到数据库或者在
RESETLOGS 之后被重置。被使用之后,该状态会被改变。
相关文章推荐
- Redo log的六种状态(CURRENT、ACTIVE、INACTIVE、UNUSED、CLEARING、CLEARING_CURRENT)浅析
- redo日志文件组的三种状态(current,active,inactive)
- Oracle日志文件的状态current/active/inactive/unused
- Oracle日志文件的状态current/active/inactive/unused
- oracle 重做日志组的三种状态:current,active,inactive
- 显示串行接口时,常见以下几种状态
- oracle 重做日志组的三种状态:current,active,inactive
- 日志组状态:inactive/active/current
- MediaPlayer服务几种常见状态
- Oracle session active 和 inactive 状态 说明
- 持久化对象有以下几种状态:
- 四滴水:使用flask框架实现web页面与数据库数据互联+常见的几种状态码
- Oracle session active 和 inactive 状态 说明
- 模拟状态为inactive的日志损坏的恢复实验(完全恢复)
- [Oracle] Active或Current联机日志文件丢失如何恢复?
- DB2 应用最常见的几种状态
- 模拟状态为active的日志损坏的数据恢复实验(不完全恢复)
- Oracle session active 和 inactive 状态 说明
- 模拟状态为active的日志损坏的数据恢复实验(不完全恢复)
- http里常见的几种返回状态码