Home » RDBMS Server » Server Administration » corrupt block header error (9.0.1.0)
corrupt block header error [message #285561] Wed, 05 December 2007 01:14 Go to next message
varu123
Messages: 754
Registered: October 2007
Senior Member
On starting the oracle database,
I got these errors:
ora-10033
0ra-00354
ora-00312

What should be the course of action?
Re: corrupt block header error [message #285564 is a reply to message #285561] Wed, 05 December 2007 01:16 Go to previous messageGo to next message
Arju
Messages: 1554
Registered: June 2007
Location: Dhaka,Bangladesh. Mobile:...
Senior Member

Copy and paste the screen messages and what you have done and actually what is the output?
Re: corrupt block header error [message #285565 is a reply to message #285561] Wed, 05 December 2007 01:18 Go to previous messageGo to next message
Mohammad Taj
Messages: 2412
Registered: September 2006
Location: Dubai, UAE
Senior Member

1. Doesn't exists

2.
ORA-00354: corrupt redo log block header

Cause: The block header on the redo block indicated by the accompanying error, is not reasonable.

Action: Do recovery with a good version of the log or do time based recovery up to the indicated time. If this happens when archiving, archiving of the problem log can be skipped by clearing the log with the UNARCHIVED option. This must be followed by a backup of every datafile to insure recoverability of the database.

3.
ORA-00312: online log string thread string: 'string'

Cause: This message reports the filename for details of another message.

Action: Other messages will accompany this message. See the associated messages for the appropriate action to take.
Re: corrupt block header error [message #285572 is a reply to message #285561] Wed, 05 December 2007 01:21 Go to previous messageGo to next message
varu123
Messages: 754
Registered: October 2007
Senior Member
I connected to one of my remote site and did
dbstart
and got these three errors
The database is in archive log mode
ora-00354: corrupt redo log block error.

Since the redo log is corrupted i was thinking to manually remove the redo log.NO data would be lost i guess
Alter database clear logfile group "grp_no";

Wiould this approach work or is right?
Re: corrupt block header error [message #285574 is a reply to message #285572] Wed, 05 December 2007 01:24 Go to previous messageGo to next message
Mohammad Taj
Messages: 2412
Registered: September 2006
Location: Dubai, UAE
Senior Member

First check corrupted redo log is not CURRENT ?
if yes then you have to perform recovery.
otherwise you can clear that logfile.

http://download.oracle.com/docs/cd/B14117_01/server.101/b10739/onlineredo.htm#sthref915
Re: corrupt block header error [message #285575 is a reply to message #285561] Wed, 05 December 2007 01:25 Go to previous messageGo to next message
varu123
Messages: 754
Registered: October 2007
Senior Member
No i checked with archive log list
Its not the current.
Can i proceed?
I will your link as well
Re: corrupt block header error [message #285591 is a reply to message #285561] Wed, 05 December 2007 02:01 Go to previous messageGo to next message
varu123
Messages: 754
Registered: October 2007
Senior Member
Thanks all,
problem solved.
I checked in v$log it was not archived.
Iused
alter database clear unarchived logfile group "grp_no";
alter database open;
Is there any other precaution i need to take?
Re: corrupt block header error [message #285593 is a reply to message #285591] Wed, 05 December 2007 02:05 Go to previous messageGo to next message
Mohammad Taj
Messages: 2412
Registered: September 2006
Location: Dubai, UAE
Senior Member

"If you clear an unarchived redo log file, you should make another backup of the database."

Take Backup of your database.
Re: corrupt block header error [message #285615 is a reply to message #285561] Wed, 05 December 2007 02:54 Go to previous messageGo to next message
varu123
Messages: 754
Registered: October 2007
Senior Member
Thanks Taj,
If the corrupted log file is current then
alter system switch logfile will not work??
and if DB_BLOCK_CHECKSUM parameter is not set then how oracle determines the corruption in block?
Re: corrupt block header error [message #285619 is a reply to message #285615] Wed, 05 December 2007 03:00 Go to previous messageGo to next message
Michel Cadot
Messages: 68718
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
Generally speaking, even if db_block_checksum is not set there are tags in the blocks that Oracle check.

Regards
Michel
Re: corrupt block header error [message #285620 is a reply to message #285615] Wed, 05 December 2007 03:00 Go to previous messageGo to next message
Mohammad Taj
Messages: 2412
Registered: September 2006
Location: Dubai, UAE
Senior Member

>alter system switch logfile will not work??
For above command you have to open your database.so it will not work.


>if DB_BLOCK_CHECKSUM parameter is not set then how oracle >determines the corruption in block?
If parameter is set to false then oracle check only system tablespace not user tablespace for block corruption.

http://download.oracle.com/docs/cd/B14117_01/server.101/b10755/initparams038.htm#REFRN10030
Re: corrupt block header error [message #285627 is a reply to message #285561] Wed, 05 December 2007 03:15 Go to previous messageGo to next message
varu123
Messages: 754
Registered: October 2007
Senior Member
Can we calculate checksum from any view or its oracle's internal stuff?
And if the parameter is false,then oracle would check the "tags?"
to verify the blocks and raise error?
Re: corrupt block header error [message #285630 is a reply to message #285627] Wed, 05 December 2007 03:18 Go to previous message
Michel Cadot
Messages: 68718
Registered: March 2007
Location: Saint-Maur, France, https...
Senior Member
Account Moderator
Oracle ALWAYS checks tags.

Regards
Michel
Previous Topic: Why dont bind variable use MV.
Next Topic: Grid concept
Goto Forum:
  


Current Time: Sat Nov 30 01:47:19 CST 2024