Extract rows from a CORRUPT table creating ROWID from DBA_EXTENTS (Doc ID 422547.1)

Last updated on OCTOBER 11, 2016

Applies to:

Oracle Database - Enterprise Edition - Version 7.3.4.0 to 11.2.0.2 [Release 7.3.4 to 11.2]
Information in this document applies to any platform.
***Checked for relevance on 27-Jan-2014***

Goal

This article describe a procedure that can be used to skip corrupted rows from a table when event 10231, dbms_repair or skipping the rows through an index cannot be used. 

This method builds the rowid's for a table based on the information from dba_extents.

Example of errors where this procedure can be used:

ORA-8103
ORA-1578
ORA-376 (The procedure can be used to recover the rows from a table which contains rows in a OFFLINE datafile).

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms