Re: Fw: Re: ORA-01578: ORACLE data block corrupted

  • From: patrick obrien <po04541@xxxxxxxxx>
  • To: Oracle L <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 23 Mar 2010 13:41:41 -0700 (PDT)

Okay, 

I used the following command to get around the LONG data type but I guess the 
DBMS_REPAIR did not work because, according to the alert log its a damaged 
header block?
 
I'm thinking I'll have to go to an old backup, restore it in dev, export the 
the table, drop the table in prod, recreate it, import the data. 

Unless some smart Oracle DBA has a better idea? thank you. POB.

SQL> insert into AMS_AFINADM.salvage_AD_OBJATCH select 
ATCH_ID,ATCH_LEN,TO_LOB(ATCH_ATCH) from AMS_AFINADM.AD_OBJATCH;
insert into AMS_AFINADM.salvage_AD_OBJATCH select 
ATCH_ID,ATCH_LEN,TO_LOB(ATCH_ATCH) from AMS_AFINADM.AD_OBJATCH
                                                                          *
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 54, block # 345609)
ORA-01110: data file 54: '/u10/dbs/fsco/object02.dbf'

root@Mxxx:/u01/app/ora/adm/fsco/bdump>#cat alert*log|grep header
Bad header found during buffer read
check value in block header: 0x0, check value not calculated
Bad header found during buffer read
check value in block header: 0x0, check value not calculated
Bad header found during buffer read
check value in block header: 0x0, check value not calculated
Bad header found during buffer read
check value in block header: 0x0, check value not calculated





--- On Tue, 3/23/10, Niall Litchfield <niall.litchfield@xxxxxxxxx> wrote:

From: Niall Litchfield <niall.litchfield@xxxxxxxxx>
Subject: Re: Fw: Re: ORA-01578: ORACLE data block corrupted
To: po04541@xxxxxxxxx
Cc: "Oracle L" <oracle-l@xxxxxxxxxxxxx>
Date: Tuesday, March 23, 2010, 9:59 AM

Check out the sqlplus copy command for this.
On Mar 23, 2010 4:50 PM, "patrick obrien" <po04541@xxxxxxxxx> wrote:



Hmm,

now I"m trying to copy this table using the create table as select and it does 
not like my LONG data type, any thoughts, thank you!



SQL> exec DBMS_REPAIR.SKIP_CORRUPT_BLOCKS('AMS_AFINADM','AD_OBJATCH');

PL/SQL procedure successfully completed.

SQL> CREATE TABLE AMS_AFINADM.AD_OBJATCH_NEW
AS SELECT * FROM AMS_AFINADM.AD_OBJATCH;

  2  AS SELECT * FROM AMS_AFINADM.AD_OBJATCH
          *
ERROR at line 2:
ORA-00997: illegal use of LONG datatype






--- On Mon, 3/22/10, Saurabh Sood
 <email2sood@xxxxxxxxx> wrote:

From: Saurabh Sood <email2sood@xxxxxxxxx>

Subject: Re: ORA-01578:
 ORACLE data block corrupted
To: po04541@xxxxxxxxx
Cc: "Oracle L" <oracle-l@xxxxxxxxxxxxx>

Date: Monday, March 22, 2010, 11:33 PM
>>
>> Hi,
>>
>> You can use event 10231 to complete the import process.
>> refer to following link ...




      


      



      

Other related posts: