Nov 23, 2009

Database got crashed - Needs recovery of undotbs

OS : IBM-AIX 5.3
RDBMS : 10.2.0.4
Scenario: Server abruptly crashed
Cause: corruption of block change tracking file and undotbs of our recovery catalog database.

Workaround:

Step 1 : After starting the server the database did not came up. We found the following error in the alert log file.

ORA-00600: internal error code, arguments: [krctcr_4], [137290073], [0],
[137309719], [0], [], [], []

Step 2 : We found the metalink doc related this issue: 553009.1

Step 3 : while performing the steps given in above metalink doc .

we faced
SQL> select name,open_mode,log_mode from v$database;

NAME OPEN_MODE LOG_MODE
--------- ---------- ------------
XXXXXXX MOUNTED ARCHIVELOG


SQL> alter database disable block change tracking;

Database altered.



SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01172: recovery of thread 1 stuck at block 1033 of file 2
ORA-01151: use media recovery to recover block, restore backup if needed


Step 4 : Since we have a cold backup.
We restored the files from the coldbackup and applied all the archive logs and opened
the database.


a) Shutdown the instance (which is running in mount state).

b) restored the file from the backup dir.(
XXXXXX_full_27042009_20:30:00.tar.Z)

$ uncompress XXXXXX_full_27042009_20:30:00.tar.Z
$ tar -xvf /opt/oracle/backup/XXXXXX_full_21112009_17:30:00.tar.Z /opt/oradata/dbarep/XXXXX

c) This zip files contains all controlfile, datafiles etc...

Note : check all the archive logs are in place.
SQL>startup nomount
SQL>alter database mount
SQL>set autorecovery on
SQL>recover database using backup controlfile untill time '2009-11-22:02:09:00';
SQL>ALTER DATABASE OPEN RESETLOGS;



'2009-11-22:02:09:00';












No comments:

Post a Comment