Share Real Life Oracle Database and PL/SQL Related Problem and Solved on My Daily Task
Monday, January 13, 2020
Redo Log Corruption - Dropping Redo Log Is Not Possible (ORA-367 checksum error in log file header)
I have faced redo log corrupted problem in database . nand can't drop the corrupted redo log . I have recover the database given below following step:
SQL> select GROUP#,THREAD#,BYTES from v$log;
GROUP# THREAD# BYTES
---------- ---------- ----------
1 1 52428800
2 1 52428800
3 1 52428800
SQL> select MEMBER from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/redo03.log
/u01/app/oracle/oradata/orcl/redo02.log
/u01/app/oracle/oradata/orcl/redo01.log
Create new ones:
SQL > ALTER DATABASE
ADD LOGFILE GROUP 4 ('/u01/app/oracle/oradata/orcl/redo04.log')
SIZE 5G;
SQL> ALTER DATABASE
ADD LOGFILE GROUP 5 ('/u01/app/oracle/oradata/orcl/redo05.log')
SIZE 5G;
SQL> ALTER DATABASE
ADD LOGFILE GROUP 6 ('/u01/app/oracle/oradata/orcl/redo06.log')
SIZE 5G;
Drop the old one:
SQL> ALTER SYSTEM SWITCH LOGFILE;
SQL> ALTER SYSTEM SWITCH LOGFILE;
SQL> ALTER DATABASE DROP LOGFILE GROUP 1;
SQL> ALTER DATABASE DROP LOGFILE GROUP 2;
ERROR at line 1:
ORA-01624: log 2 needed for crash recovery of instance orcl (thread 1)
ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/orcl/redo02.log'
SQL> ALTER DATABASE DROP LOGFILE GROUP 3;
SQL> alter system checkpoint;
SQL> ALTER DATABASE DROP LOGFILE GROUP 2;
(Dropping group 2 is OK after checkpoint)
check the redo log group
SQL> select GROUP#,THREAD#,BYTES from v$log;
GROUP# THREAD# BYTES
---------- ---------- ----------
4 1 5368709120
5 1 5368709120
6 1 5368709120
Thanks.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment