咨询微信: dbservice1234 7 x 24 在线支持!

Oracle REDO LOG CORRUPTION - DROPPING REDO LOGS NOT POSSIBLE - CLEAR LOGFILE

Oracle REDO LOG CORRUPTION - DROPPING REDO LOGS NOT POSSIBLE - CLEAR LOGFILE

Oracle REDO LOG CORRUPTION - DROPPING REDO LOGS NOT POSSIBLE - CLEAR LOGFILE

 

Problem Description:
====================
- Redo log corruption errors in one of the redo log files while the database is open.
The redo log corruption could be any of these errors:
ORA-16038 log %s sequence# %s cannot be archived
ORA-354 corrupt redo log block header
ORA-353 log corruption near block <num> change <str >time <str>
ORA-367 checksum error in log file header
ORA-368 checksum error in redo log block
- Dropping the redo logs is not possible as it may be needed for instance recovery.
- The online redo logs may not be dropped if:
+ There are only two log groups
+ The corrupt redo log file belongs to the current group
Solution Description:
=====================
- Clear the logfile having the problem:
Syntax:
alter database clear <unarchived> logfile group <integer>;
alter database clear <unarchived> logfile '<filename>';
eg: alter database clear logfile group 1;
alter database clear unarchived logfile group 1;
- An online redo log file with status=CURRENT or status=ACTIVE in v$log may not be cleared and
the error ORA-1624 will be produced.
- Please note that 'alter database clear logfile' should be used cautiously. If no archived log was produced, then
a complete recovery will not be possible. Perform a backup immediately after completing this command.
Solution Explanation:
=====================
- If an online redo log file has been corrupted while the database is open,
the 'alter database clear logfile' command can be used to clear the files
without the database having to be shutdown.
- The command erases all data in the logfile.
IMPORTANT: It is wise to take a fresh backup.