Skip to Main Content
  • Questions
  • ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [1384], [1270], [2885], [], [], [], [], [], [], []

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Fahd.

Asked: October 23, 2019 - 6:47 pm UTC

Last updated: November 02, 2020 - 2:44 am UTC

Version: 11.2.0.1.0

Viewed 10K+ times! This question is

You Asked

-------------------------------------

Oracle Database 11.2.0.1.0

Archive Log Mode

RMAN Backup is performed daily, with backup control file and backup archive log file 1 time to disk.

------------------------------------


Hi Ask Tom team,

After power failure i got above error. I recovered database using below steps. Did not loose any transaction, which i verified manually.

But still i am not sure completely that, was it the best approach to recover ?

could i loose some data by using these approach ?

could there be any other better way of recovering database ?

Could database be recovered by RMAN ( I tried RESTORE DATABASE from RMAN, but it was not working ) ?



Thanks and regards

Fahd





Enter user-name: sys@orcl2 / as sysdba

Enter password:

 

 

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 

 

 

SQL> select open_mode from v$database;

 

 

OPEN_MODE

--------------------

MOUNTED

 

 

SQL> alter database open;

alter database open

*

ERROR at line 1:

ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1],[1384], [1270], [2885], [], [], [], [], [], [], []

 

SQL> select a.member, a.group#, b.status from v$logfile a ,v$log b where a.group# = b.group# and b.status='CURRENT' ;

 

 

MEMBER

--------------------------------------------------------------------------------

 

 

    GROUP# STATUS

---------- ----------------

D:\APP\DELL\ORADATA\ORCL2\REDO01.LOG

         1 CURRENT

 

SQL> recover database using backup controlfile until cancel ;

ORA-00279: change 35045479 generated at 10/15/2019 23:18:20 needed for thread 1

ORA-00289: suggestion :

D:\APP\DELL\FLASH_RECOVERY_AREA\ORCL2\ARCHIVELOG\2019_10_17\O1_MF_1_1384_%U_.ARC

 

 

ORA-00280: change 35045479 for thread 1 is in sequence #1384

 

 

 

 

Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

D:\APP\DELL\ORADATA\ORCL2\REDO01.LOG                                 ----Copied current Redolog file which i got from above query

Log applied.

Media recovery complete.

SQL> Alter database open resetlogs ;

 

 

Database altered.

and Connor said...

MOS note 1296264.1 explains what to do, and it looks like you followed those steps.

Do cancel based reocvery, and apply 'current online redolog' manually
------------

SQL>Startup mount ;

SQL> select a.member, a.group#, b.status from v$logfile a ,v$log b where a.group#=b.group# and b.status='CURRENT' ;

Note down the name of the redo log

SQL> Shutdown abort ;

Take a OS Level backup of the controlfile (This is to ensure we have a backup of current state of controlfile)

SQL> Startup mount ;
SQL> recover database using backup controlfile until cancel ;

Enter location of redo log shown as current in Query 1 when prompted for recovery

Hit Enter

SQL> Alter database open resetlogs ;


You could have done the same with RMAN, ie, issued a recover but I suspect it would have not known that it wanted to apply the current redo log.

Rating

  (5 ratings)

Is this answer out of date? If it is, please let us know via a Comment

Comments

Role of RMAN Backups

Fahd Bahoo, October 24, 2019 - 6:56 am UTC

Thanks for clarifying,

need to know that, does RMAN backups played any role in this recovery process ?

Connor McDonald
October 25, 2019 - 5:49 am UTC

Nope. Just the current redo log.

RMAN auto-backup

Fahd Bahoo, October 25, 2019 - 8:34 am UTC

did this recovery process used control file from RMAN auto-backup ?
Connor McDonald
October 29, 2019 - 11:08 am UTC

No, it used the existing controlfile - but we treated it as a backup controlfile.

Recover Database from RMAN

Fahd Bahoo, October 31, 2019 - 12:09 pm UTC

Could i recover database from the last RMAN backups of Datafiles/Controlfiles and apply all the further archived redologs and online redologs, to open database.
if yes then how ?
Connor McDonald
November 01, 2019 - 1:08 am UTC

You could, but that seems a waste of effort - time to restore database + time to apply archives could be non-trivial

Restore from RMAN Backup

Fahd Bahoo, November 05, 2019 - 6:37 am UTC

But if i have time, and want to restore from RMAN backups, how can i do it? can you please give commands for that.

Thanks & Regards

Connor McDonald
November 06, 2019 - 1:21 am UTC

Here's an example from the docs

RUN 
{
  # Optionally, set upper limit for eligible time stamps of control file 
  # backups
  # SET UNTIL TIME '09/10/2000 13:45:00';
  # Specify a nondefault autobackup format only if required
  # SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK 
  #   TO '?/oradata/%F.bck';
  ALLOCATE CHANNEL c1 DEVICE TYPE sbt PARMS='...'; # allocate manually
  RESTORE CONTROLFILE FROM AUTOBACKUP
    MAXSEQ 100           # start at sequence 100 and count down
    MAXDAYS 180;         # start at UNTIL TIME and search back 6 months
  ALTER DATABASE MOUNT DATABASE;
}
# uses automatic channels configured in restored control file
RESTORE DATABASE UNTIL SEQUENCE 13243;
RECOVER DATABASE UNTIL SEQUENCE 13243; # recovers to latest archived log


Thanks for the Answer.

Sudipta Maiti, October 29, 2020 - 10:11 am UTC

This answer clearly mentioned all the required steps. The problems in my machine is resloved.

Thank you!
Connor McDonald
November 02, 2020 - 2:44 am UTC

glad we could help

More to Explore

Backup/Recovery

Check out the complete guide to all of the Backup & Recovery techniques in the Oracle Database.