Monday, February 17, 2014

ORA-01194: file 1 needs more recovery to be consistent : No archivelog database asking for recovery

ORA-01194: file 1 needs more recovery to be consistent

This is the case datafiles were inconsistent and it is asking for recovery when you try to start the noarchivelog mode database.

Step 1: Start the database in mount.
$sqlplus / as sysdba

SQL>startup mount;

Step 2: Check the datafiles which required recovery.
SQL>select * from v$recover_file;

Step 3: As you do not have the needed archivelogs to recover those files, you should drop them offline then recover database and open.

SQL>alter database datafile <FILE#> offline drop;

NOTE: For sure you will loose data inside those files.

Step 4: Recover the database.
SQL>recover database;

If you come across below error

ORA-00283: recovery session canceled due to errors
ORA-01610: recovery using the BACKUP CONTROLFILE option must be done

then, do the following
SQL>recover database using backup controlfile until cancel;

It will ask to Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

When the session request a sequence for recovery please point write the path of the each online redolog one after another untill its say database recovered. You can select the redolog member from below query.

SQL>select group#, member FROM v$logfile;
    GROUP#
----------
MEMBER
--------------------------------------------------------------------------------
         3
/home/oracle/u01/oradata/SID/redo03.log

         2
/home/oracle/u01/oradata/SID/redo02.log

         1
/home/oracle/u01/oradata/SID/redo01.log
NOTE: Please repeat the recovery process, When the session request a sequence for recovery please point write the path of the online redolog:

Step 5: Then open the database resetlogs.
SQL>alter database open resetlogs;

No comments:

Post a Comment