You might have faced this issue while trying to start the database. Most of the time this ora error occur during database restart after abnormal shutdown or power failure. To resolve it you need to recover the database using a backup control file as shown below.
bash-3.2$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Jul 21 16:49:07 2021
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 313159680 bytes
Fixed Size 2250448 bytes
Variable Size 222300464 bytes
Database Buffers 83886080 bytes
Redo Buffers 4722688 bytes
Database mounted.
ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1],
[17], [46616], [47275], [], [], [], [], [], [], []
Ultimate Solution
STEP 1: Shut down the database and startup in mount state
SQL> shutdown immediate;
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 313159680 bytes
Fixed Size 2250448 bytes
Variable Size 222300464 bytes
Database Buffers 83886080 bytes
Redo Buffers 4722688 bytes
Database mounted.
SQL>
STEP 2: Take a backup of the control file manually at os level using cp or copy command.
SQL> show parameter control_files;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_files string /u01/app/oracle/oradata/DB11G/
control01.ctl, /u01/app/oracle
/oradata/DB11G/control02.ctl
STEP 3: Check the Current Logfile
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
---------- ----------------
/u01/app/oracle/oradata/DB11G/redo01.log
1 CURRENT
STEP 4: Shutdown the DB and startup in Mount state
SQL> shutdown abort
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 313159680 bytes
Fixed Size 2250448 bytes
Variable Size 222300464 bytes
Database Buffers 83886080 bytes
Redo Buffers 4722688 bytes
Database mounted.
STEP 5: Recover the database using backup controlfile until cancel.
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 260338 generated at 07/15/2021 00:21:38 needed for thread 1
ORA-00289: suggestion :
/u01/app/oracle/product/11.2.0.4/db_1/dbs/arch1_17_1077923863.dbf
ORA-00280: change 260338 for thread 1 is in sequence #17
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/u01/app/oracle/oradata/DB11G/redo01.log
Log applied.
Media recovery complete.
SQL>
STEP 6: Reset the logs and open the database
SQL> alter database open resetlogs;
Database altered.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
bash-3.2$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Wed Jul 21 16:49:07 2021
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 313159680 bytes
Fixed Size 2250448 bytes
Variable Size 222300464 bytes
Database Buffers 83886080 bytes
Redo Buffers 4722688 bytes
Database mounted.
Database opened.
SQL>
SQL>
Done!
I hope after going through this blog to fix the ora-00600 internal error code, you will be able to fix and recover your Oracle database easily. All the best to you.
Comments
Post a Comment