This content has been marked as final. Show 3 replies
I also ran DBVERIFY:
DBVERIFY - Verification complete
Total Pages Examined : 128000
Total Pages Processed (Data) : 6460
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 4185
Total Pages Failing (Index): 0
Total Pages Processed (Other): 7034
Total Pages Processed (Seg) : 0
Total Pages Failing (Seg) : 0
Total Pages Empty : 110321
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
Highest block SCN : 3780615892 (2863.3780615892)
Try first to identify which segment is involved in the block corruption:1 person found this helpful
ORA-01578: ORACLE data block corrupted (file # *<FILE_ID>*, block #*<BLOCK_NR>*)
Are you sure what segment was affected by corrupted block ?
Execute this SQL below and see what segment was affected. I the segment is the index, for example then you just need drop it and re-create it again.
WHERE FILE_ID = *<FILE_ID>* AND *<BLOCK_NR*> BETWEEN BLOCK_ID
AND BLOCK_ID+BLOCKS -1;
Identification of Corrupt Blocks+
The V$DATABASE_BLOCK_CORRUPTION view displays blocks marked corrupt by database components such as RMAN, ANALYZE, dbv, and SQL queries. The following types of corruption result in rows added to this view:
+1)Physical corruption (sometimes called media corruption)+
- The database does not recognize the block: the checksum is invalid, the block contains all zeros, or the block header is fractured.
- Physical corruption checking is enabled by default. You can turn off checksum checking by specifying the NOCHECKSUM option of the BACKUP command, but other physical consistency checks, such as checks of the block headers and footers, cannot be disabled.
+2) Logical corruption+
- The block has a valid checksum, the header and footer match, and so on, but the contents are logically inconsistent. Block media recovery cannot repair logical block corruption.
- Logical corruption checking is disabled by default. You can turn it on by specifying the CHECK LOGICAL option of the BACKUP, RESTORE, RECOVER, and VALIDATE commands.
The database can detect some corruptions by validating relationships between blocks and segments, but cannot detect them by a check of an individual block. The V$DATABASE_BLOCK_CORRUPTION view does not record this type of corruption.+
So I am trying to restore datafile now.
I also did DBV and nothing interesting came out of it. No blocks were marked corrupt.
Analyze table showed:
SQL> analyze table APEX_040000.WWV_FLOW_ACTIVITY_LOG1$ validate structure;
analyze table APEX_040000.WWV_FLOW_ACTIVITY_LOG1$ validate structure
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 7, block # 2595)
ORA-01110: data file 7: '/u01/app/oracle/admin/refat/db/apex_tbs_01.dbf'
I found a DBMS Repair script in ML so I may use that.
I will keep you posted