发布网友
共1个回答
热心网友
有2种情况
日志非当前状态的:
SQL> alter database open
2 ;
alter database open
*
ERROR at line 1:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: 'D:ORACLEORADATADEMOREDO01.LOG'
SQL> alter database drop logfile member 'D:ORACLEORADATADEMOREDO01.LOG'
2 ;
alter database drop logfile member 'D:ORACLEORADATADEMOREDO01.LOG'
*
ERROR at line 1:
ORA-00361: cannot remove last log member D:ORACLEORADATADEMOREDO01.LOG for
group 1
SQL> alter database clear logfile group 1;
Database altered.
SQL> alter database open;
Database altered.
2如果是当前日志
SQL> select * from v$log;
rows will be truncated
rows will be truncated
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARCHIVED STATUS
---------- ---------- ---------- ---------- ---------- --------- ---------------
1 1 0 104857600 1 YES UNUSED
2 1 4 104857600 1 YES INACTIVE
3 1 6 104857600 1 NO CURRENT
我把日志3删除掉,任意建立个logfile03.log,这样的日志放进去
SQL> alter database clear logfile group 3;
alter database clear logfile group 3
*
ERROR at line 1:
ORA-00350: log 3 of thread 1 needs to be archived
ORA-00312: online log 3 thread 1: 'D:ORACLEORADATADEMOREDO03.LOG'
SQL> alter database clear unarchived logfile group 3;
Database altered.
SQL> alter database open;
Database altered.