所有成员后恢复
If a media failure damages all members of an online redo log group, then different scenarios can occur depending on the type of online redo log group affected by the failure and the archiving mode of the database.
如果介质故障损坏所有的日志组的成员,不同场景下发生的失败影响依赖于日志组类型和数据库的归档模式。
If the damaged online redo log group is current and active, then it is needed for crash recovery; otherwise, it is not. Table 30-4 outlines the various recovery scenarios.
如果损坏的当前日志组时current和active,那么需要做故障恢复。
Table 30-4 Recovering After the Loss of an Online Redo Log Group
To determine whether the damaged group is active or inactive.
确定损坏的组是否是acitve 或inactive
Locate the file name of the lost redo log in V$LOGFILE and then look for the group number corresponding to it. For example, enter:
SELECT GROUP#, STATUS, MEMBER FROM V$LOGFILE;
GROUP# STATUS MEMBER
------- ----------- ---------------------
0001 /oracle/dbs/log1a.f
0001 /oracle/dbs/log1b.f
0002 INVALID /oracle/dbs/log2a.f
0002 INVALID /oracle/dbs/log2b.f
0003 /oracle/dbs/log3a.f
0003 /oracle/dbs/log3b.f
Determine which groups are active.
For example, execute the following SQL query (sample output included):
SELECT GROUP#, MEMBERS, STATUS, ARCHIVED
FROM V$LOG;
GROUP# MEMBERS STATUS ARCHIVED
------ ------- --------- -----------
0001 2 INACTIVE YES
0002 2 ACTIVE NO
0003 2 CURRENT NO
Perform one of the following actions:
If the affected group is inactive, then follow the procedure in "Losing an Inactive Online Redo Log Group".
If the affected group is active (as in the preceding example), then follow the procedure in "Losing an Active Online Redo Log Group".
Losing an Inactive Online Redo Log Group
丢失inactive 日志组
If all members of an online redo log group with INACTIVE status are damaged, then the procedure depends on whether you can fix the media problem that damaged the inactive redo log group. If the failure is temporary, then fix the problem. The log writer can reuse the redo log group when required. If the failure is permanent, then the damaged inactive online redo log group eventually halts normal database operation. Reinitialize the damaged group manually by issuing the ALTER DATABASE CLEAR LOGFILE statement as described in this section.
inactive状态的日志组所有成员损坏。那么程序依赖于你能否定位inactive日志组的介质问题(日志文件是否损坏),如果介质故障是临时的,log writer 能重新使用 日志组。如果介质故障是永久的,那么损坏的inactive日志组最终会停止正常的数据库操作。通过执行alter database CLEAR LOGFILE语句手动的重新初始化损坏的日志组。
Clearing Inactive, Archived Redo
清除inactive 已归档的日志
You can clear an inactive redo log group when the database is open or closed. The procedure depends on whether the damaged group has been archived.
数据库开启或关闭都能 clear inactive 日志组。依赖于损坏的日志组是否归档。
To clear an inactive, online redo log group that has been archived:
If the database is shut down, then s