3.Your database is in ARCHIVELOG mode. You have two online redo log groups, each of which contains
one redo member. When you attempt to start the database, you receive the following errors:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: 'D:\REDO01.LOG'
You discover that the online redo log file of the current redo group is corrupted.
Which statement should you use to resolve this issue?
A. ALTER DATABASE DROP LOGFILE GROUP 1;
B. ALTER DATABASE CLEAR LOGFILE GROUP 1;
C. ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 1;
D. ALTER DATABASE DROP LOGFILE MEMBER 'D:\REDO01.LOG';
Answer: C
答案解析:
参考:http://docs.oracle.com/cd/E11882_01/backup.112/e10642/osadvsce.htm#BRADV90052
Table 30-4 Recovering After the Loss of an Online Redo Log Group
If the Group Is... | Then... | And You Should... |
---|---|---|
Inactive |
It is not needed for crash recovery |
Clear the archived or unarchived group. |
Active |
It is needed for crash recovery |
Attempt to issue a checkpoint and clear the log; if impossible, then you must either use Flashback Database or restore a backup and perform incomplete recovery up to the most recent available redo log. |
Current |
It is the redo log that the database is currently writing to |
Attempt to clear the log; if impossible, then you must either use Flashback Database or restore a backup and perform incomplete recovery up to the most recent available redo log. |
[oracle@rtest ~]$ oerr ora 313
00313, 00000, "open failed for members of log group %s of thread %s"
// *Cause: The online log cannot be opened. May not be able to find file.
// *Action: See accompanying errors and make log available.
[oracle@rtest ~]$ oerr ora 312
00312, 00000, "online log %s thread %s: '%s'"
// *Cause: This message reports the filename for details of another message.
// *Action: Other messages will accompany this message. See the
// associated messages for the appropriate action to take.
你的数据库在归档记录模式。你有两个在线重做日志组,其中每个都包含一个重做成员。当您尝试启动数据
库时,您会收到以下错误:
ORA-00313:线程1日志组1成员打开失败
ORA-00312:联机日志1线程1:'D:\ REDO01.LOG
你发现当前的重做组联机重做日志文件被损坏。你应该使用哪种说法来解决这个问题?
Clearing a not-yet-archived redo log allows it to be reused without archiving it. This action makes backups unusable if they were started before the last change in the log, unless the file was taken offline before the first change in the log. Hence, if you need the cleared log file for recovery of a backup, then you cannot recover that backup. Clearing a not-yet-archived-redo-log, prevents complete recovery from backups due to the missing log.
To clear an inactive, online redo log group that has not been archived:
If the database is shut down, then start a new instance and mount the database:
Clear the log using the UNARCHIVED
keyword.
For example, to clear log group 2
, issue the following SQL statement: