Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: corrupted block
I think more recent versions of Oracle have options for skipping corrupt blocks with exports.
One possible way:
If you have a valid primary key index on the table, and the index is in a
good tablespace, you might be able to cycle through all the primary keys,
select the row corresponding to that primary key and insert it into a new
table. I was able to do this about a month ago with a 8.1.7 database. In
my case, I think it was a block header that was corrupt, not data; so I got
all the data OK. It was rather slow, grabbing and inserting one row at a
time; but I got all the data. As long as I didn't do anything that would
cause a table scan of any kind, I could get the data.
By the way, rman not only failed to spot the corruption, but backed it up AND restored the corruption! My initial attempt was to just rename the datafile at the file system level, then recover it from the previous backup. I could relate another one of those TAR non-support -- total and complete NON-support! -- on this one.
> -----Original Message-----
>
> So my question is, if all backups contain the corrupted
> block, how would
> I copy all non-corrupted blocks from this table into a new table?
>
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Stephen Lee INET: Stephen.Lee_at_DTAG.Com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Mon Feb 24 2003 - 11:44:30 CST