Corrupt block found

Posted on 2003-03-29
Medium Priority
Last Modified: 2007-12-19
we have oracle 8i on linux (2 database on same server)
error: Corrupt block relative dba : 0*03400353 file=13 blocknum=915
       Fractured block found during buffer read
       data in bad block type : 0. format : 0 rdba :0*00000000
Question by:purnaoracle
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Author Comment

ID: 8233129

Author Comment

ID: 8233355
I have oracle 8i on linux (2 database on same server)
error: Corrupt block relative dba : 0*03400353 file=13 blocknum=915
      Fractured block found during buffer read
      data in bad block type : 0. format:0 rdba :0*00000000
LVL 10

Expert Comment

ID: 8234041
If this is a production server, first thing you should do is file an iTAR with Oracle and involve them in resolving the corruption.

Some things you can do by yourself is identify the bad block and try recreating the object if it is an index etc.

SELECT tablespace_name, segment_type, owner, segment_name
FROM dba_extents WHERE file_id = 13 and 915 between block_id AND block_id + blocks - 1;

Once you identify the bad object, if the object belongs to SYS or SYSTEM don't mess around with it unless Oracle tells you to do so. If you are able to recreate the object analyze the corresponding table with VALIDATE STRUCTURE to see if it is ok.


Accepted Solution

Datamonkey earned 200 total points
ID: 8234175
The best way to get around this is to offline the datafile, restore a backup of the datafile and recover that. Obviously you can only do that if you're in archive log mode and if the corruption wasn't already introduced a long time ago (you need a backup from before the corruption started and all the archive logfiles created since then).

If you can't recover this it's useful to check what the object is that lives on the corrupted block. If it is an index for example you can simply drop and recreate it.

To check what lives on this block run the following query:

SELECT tablespace_name, segment_type, owner, segment_name
  FROM dba_extents
 WHERE file_id = 13
   AND 915 between block_id AND block_id + blocks - 1

Now, if it's an index you can drop and recreate it, it could be a table that you can rebuild based on other information in other tables etc. etc.
If it's something that you cannot rebuild and you cannot recover like explained at the beginning of this then let us know and I'll have a further look

Expert Comment

ID: 8234541
Datamonkey is correct but an additional comment before doing his suggession use "dbv" to check if your backup file has the corruption or not.

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Have you ever had to make fundamental changes to a table in Oracle, but haven't been able to get any downtime?  I'm talking things like: * Dropping columns * Shrinking allocated space * Removing chained blocks and restoring the PCTFREE * Re-or…
Checking the Alert Log in AWS RDS Oracle can be a pain through their user interface.  I made a script to download the Alert Log, look for errors, and email me the trace files.  In this article I'll describe what I did and share my script.
Via a live example show how to connect to RMAN, make basic configuration settings changes and then take a backup of a demo database
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Suggested Courses

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question