Alert log :
Tue Mar 08 07:50:39 2016
Errors in file /data01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_m000_8471.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxht2w0_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: online log 1 thread 1: '/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxht2q1_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Tue Mar 08 07:50:39 2016
Errors in file /data01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_m000_8471.trc:
ORA-00313: open failed for members of log group 2 of thread 1
ORA-00312: online log 2 thread 1: '/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxht4z2_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: online log 2 thread 1: '/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxht4vz_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Check the status of members if they are INACTIVE :
MEMBER GROUP# STATUS ARCHIVED
--------------------------------------------------------------------------- ---------- ---------------- ------- ---
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxht2w0_.log 1 INACTIVE NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxht2q1_.log 1 INACTIVE NO
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxht4z2_.log 2 INACTIVE NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxht4vz_.log 2 INACTIVE NO
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_3_cfxht6mt_.log 3 CURRENT NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_cfxht6jg_.log 3 CURRENT NO
As the status in INACTIVE, log group 1 and 2 is no longer needed for crash recovery .Therefore, you can use the clear logfile command to re-create all members of a log group. The following example re-creates all log members of group 1 and 2 :
SQL> alter database clear logfile group 1;
alter database clear logfile group 1
*
ERROR at line 1:
ORA-00350: log 1 of instance orcl (thread 1) needs to be archived
ORA-00312: online log 1 thread 1: '/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxht2q1_.log'
ORA-00312: online log 1 thread 1: '/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxht2w0_.log'
If the log group has not been archived, then you will need to use the clear unarchived logfile command as follows:
SQL> alter database clear unarchived logfile group 1;
Database altered.
SQL> alter database clear unarchived logfile group 2 ;
Database altered.
SQL> select member, a.group#, a.status, b.status, a.archived from v$log a, v$logfile b where a.group# = b.group# order by a.group#, member;
MEMBER GROUP# STATUS STATUS ARC
--------------------------------------------------------------------------- ---------- ---------------- ------- ---
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxm3zbt_.log 1 UNUSED YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxm3z7v_.log 1 UNUSED YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxm48rs_.log 2 UNUSED YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxm48oq_.log 2 UNUSED YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_3_cfxht6mt_.log 3 CURRENT NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_cfxht6jg_.log 3 CURRENT NO
6 rows selected.
SQL> Alter system switch logfile;
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> select member, a.group#, a.status, b.status, a.archived from v$log a, v$logfile b where a.group# = b.group# order by a.group#, member;
MEMBER GROUP# STATUS STATUS ARC
--------------------------------------------------------------------------- ---------- ---------------- ------- ---
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxm3zbt_.log 1 ACTIVE YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxm3z7v_.log 1 ACTIVE YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxm48rs_.log 2 ACTIVE YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxm48oq_.log 2 ACTIVE YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_3_cfxht6mt_.log 3 CURRENT NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_cfxht6jg_.log 3 CURRENT NO
6 rows selected.
Tue Mar 08 07:50:39 2016
Errors in file /data01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_m000_8471.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxht2w0_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: online log 1 thread 1: '/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxht2q1_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Tue Mar 08 07:50:39 2016
Errors in file /data01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_m000_8471.trc:
ORA-00313: open failed for members of log group 2 of thread 1
ORA-00312: online log 2 thread 1: '/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxht4z2_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
ORA-00312: online log 2 thread 1: '/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxht4vz_.log'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
Check the status of members if they are INACTIVE :
MEMBER GROUP# STATUS ARCHIVED
--------------------------------------------------------------------------- ---------- ---------------- ------- ---
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxht2w0_.log 1 INACTIVE NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxht2q1_.log 1 INACTIVE NO
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxht4z2_.log 2 INACTIVE NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxht4vz_.log 2 INACTIVE NO
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_3_cfxht6mt_.log 3 CURRENT NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_cfxht6jg_.log 3 CURRENT NO
As the status in INACTIVE, log group 1 and 2 is no longer needed for crash recovery .Therefore, you can use the clear logfile command to re-create all members of a log group. The following example re-creates all log members of group 1 and 2 :
SQL> alter database clear logfile group 1;
alter database clear logfile group 1
*
ERROR at line 1:
ORA-00350: log 1 of instance orcl (thread 1) needs to be archived
ORA-00312: online log 1 thread 1: '/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxht2q1_.log'
ORA-00312: online log 1 thread 1: '/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxht2w0_.log'
If the log group has not been archived, then you will need to use the clear unarchived logfile command as follows:
SQL> alter database clear unarchived logfile group 1;
Database altered.
SQL> alter database clear unarchived logfile group 2 ;
Database altered.
SQL> select member, a.group#, a.status, b.status, a.archived from v$log a, v$logfile b where a.group# = b.group# order by a.group#, member;
MEMBER GROUP# STATUS STATUS ARC
--------------------------------------------------------------------------- ---------- ---------------- ------- ---
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxm3zbt_.log 1 UNUSED YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxm3z7v_.log 1 UNUSED YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxm48rs_.log 2 UNUSED YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxm48oq_.log 2 UNUSED YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_3_cfxht6mt_.log 3 CURRENT NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_cfxht6jg_.log 3 CURRENT NO
6 rows selected.
SQL> Alter system switch logfile;
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> select member, a.group#, a.status, b.status, a.archived from v$log a, v$logfile b where a.group# = b.group# order by a.group#, member;
MEMBER GROUP# STATUS STATUS ARC
--------------------------------------------------------------------------- ---------- ---------------- ------- ---
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_1_cfxm3zbt_.log 1 ACTIVE YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_cfxm3z7v_.log 1 ACTIVE YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_2_cfxm48rs_.log 2 ACTIVE YES
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_cfxm48oq_.log 2 ACTIVE YES
/data01/app/oracle/fast_recovery_area/ORCL/onlinelog/o1_mf_3_cfxht6mt_.log 3 CURRENT NO
/data01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_cfxht6jg_.log 3 CURRENT NO
6 rows selected.