Wednesday, May 14, 2008

ORA-00313 ,ORA-00312 open failed for members of log group

Error Description:
---------------------------

Whenever you start your database you returned by the following message,

ORA-00313: open failed for members of log group 2 of thread 1
ORA-00312: online log 2 thread 1: '/oradata2/data1/dbase/redo02.log'

Cause of The problem:
-----------------------------


Your database was in archive log file, you shutdown your database and whenever you start it up either your redo log file is deleted or it is corrupted (if you overwrite or truncate the file).In this case you had 1 redo log member on each group.

Solution of The problem:
--------------------------------

It is not possible to recover missing redo log file. In order to solve the problem do the following.

A)Mount the database.

SQL>STARTUP MOUNT
Database mounted.

B)Check the status of the logile to see whether it is current.

Here it is,

SQL> SELECT STATUS FROM V$LOG WHERE GROUP#=2;

STATUS
----------------
CURRENT

i)If the status did not CURRENT then simply drop the log file by,
SQL>ALTER DATABASE DROP LOGFILE GROUP 2;

If there are only 2 log groups then it will be necessary to add another group before dropping this one.
So, before dropping do,

SQL>ALTER DATABASE ADD LOGFILE GROUP 4 '/oradata2/redo3.log' SIZE 10M;

ii)If/As the status is CURRENT then simply perform fake recovery and then open resetlogs.

SQL>RECOVER DATABASE UNTIL CANCEL;
and print CANCEL.

SQL>ALTER DATABASE OPEN RESETLOGS;

Related Documents

Startup fails with oracle error ORA-00119, ORA-00132

5 comments:

  1. Thank you a lot. It solved my problem. Your blog is really useful.

    ReplyDelete
  2. This is very helpful for me... I had the same fixed. Now fixed. Thanks much.

    ReplyDelete
  3. Thanks a lot for this nice explanation.

    Could you please help and point me how free disk space taken by the logfiles?

    ReplyDelete
  4. Thank you!! It helped a lot!!

    ReplyDelete
  5. Great! this solved my problem..Thanks a lot

    ReplyDelete