解决方法:复制一下就行
05:10:06 SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM
---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------
1 1 9 10485760 2 NO INACTIVE 384007 02-AUG-11
3 1 8 10485760 2 NO INACTIVE 384005 02-AUG-11
2 1 10 10485760 2 NO CURRENT 385481 02-AUG-11
05:10:12 SQL> !
[oracle@oracle ~]$ ls /disk2/lx01/oradata/
control03.ctl redo01a.log redo02a.log redo03a.log redo04a.log redo05a.log
[oracle@oracle ~]$ exit
exit
05:14:31 SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
05:14:41 SQL> !
[oracle@oracle ~]$ rm /disk2/lx02/oradata/redo01a.log
[oracle@oracle ~]$ !sql
sqlplus '/as sysdba'
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 2 05:15:02 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
05:15:02 SQL> startup
ORACLE instance started.
Total System Global Area 251658240 bytes
Fixed Size 1218820 bytes
Variable Size 125830908 bytes
Database Buffers 121634816 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
05:15:12 SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM
---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------
1 1 9 10485760 2 NO INACTIVE 384007 02-AUG-11
3 1 8 10485760 2 NO INACTIVE 384005 02-AUG-11
2 1 10 10485760 2 NO CURRENT 385481 02-AUG-11
05:15:24 SQL> desc v$logfile;
Name Null? Type
----------------------------------------------------------------------------------- -------- --------------------------------------------------------
GROUP# NUMBER
STATUS VARCHAR2(7)
TYPE VARCHAR2(7)
MEMBER VARCHAR2(513)
IS_RECOVERY_DEST_FILE VARCHAR2(3)
05:15:43 SQL> col member for a50
05:15:48 SQL> r
1* select group#,member ,status from v$logfile
GROUP# MEMBER STATUS
---------- -------------------------------------------------- -------
2 /disk2/lx02/oradata/redo02a.log
1 /disk2/lx02/oradata/redo01a.log INVALID
3 /disk2/lx02/oradata/redo03a.log
1 /disk1/lx02/oradata/redo01b.log
2 /disk1/lx02/oradata/redo02b.log
3 /disk1/lx02/oradata/redo03b.log
6 rows selected.
05:15:48 SQL>
告警日志:
Errors in file /u01/app/oracle/admin/lx02/bdump/lx02_lgwr_9105.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/disk2/lx02/oradata/redo01a.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
解决:
05:15:48 SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
05:17:47 SQL> !
[oracle@oracle ~]$ cp /disk1/lx02/oradata/redo01b.log /disk2/lx02/oradata/redo01a.log
[oracle@oracle ~]$ !sql
sqlplus '/as sysdba'
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Aug 2 05:18:02 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
05:18:02 SQL> startup
ORACLE instance started.
Total System Global Area 251658240 bytes
Fixed Size 1218820 bytes
Variable Size 125830908 bytes
Database Buffers 121634816 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
05:18:14 SQL> col member for a50
05:18:26 SQL> select group#,member ,status from v$logfile
05:18:29 2 ;
GROUP# MEMBER STATUS
---------- -------------------------------------------------- -------
2 /disk2/lx02/oradata/redo02a.log
1 /disk2/lx02/oradata/redo01a.log INVALID
3 /disk2/lx02/oradata/redo03a.log
1 /disk1/lx02/oradata/redo01b.log
2 /disk1/lx02/oradata/redo02b.log
3 /disk1/lx02/oradata/redo03b.log
6 rows selected.
05:18:31 SQL> alter system switch logfile;
System altered.
05:18:37 SQL> /
System altered.
05:18:39 SQL> select group#,member ,status from v$logfile
05:18:40 2 ;
GROUP# MEMBER STATUS
---------- -------------------------------------------------- -------
2 /disk2/lx02/oradata/redo02a.log
1 /disk2/lx02/oradata/redo01a.log
3 /disk2/lx02/oradata/redo03a.log
1 /disk1/lx02/oradata/redo01b.log
2 /disk1/lx02/oradata/redo02b.log
3 /disk1/lx02/oradata/redo03b.log
6 rows selected.