【Oracleのデータ復旧】ORA-01578

一般的に、ORA-1578はデータブロックが物理的に壊されたと見なされている。エラ情報は以下の通り:

 

プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:service@parnassusdata.com

 

[oracle@oel8 dirdat]$ oerr ora 1578

01578, 00000, “ORACLE data block corrupted (file # %s, block # %s)”

// *Cause:  The data block indicated was corrupted, mostly due to software

//          errors.

// *Action: Try to restore the segment containing the block indicated. This

//          may involve dropping the segment and recreating it. If there

//          is a trace file, report the errors in it to your ORACLE

//          representative

 

SQL> select * from scott.emp;

select * from scott.emp

*

ERROR at line 1:

ORA-01578: ORACLE data block corrupted (file # 11, block # 34) ここのFILE#はRFNである

ORA-01110: data file 6:’/home/oracle/corrclass.dbf’   ここはAFNである

 

 

壊れたデータブロックractured Block:

 

Corrupt block relative dba: 0x0380e573 (file 14, block 58739)

Fractured block found during buffer read

Data in bad block –

type: 6 format: 2 rdba: 0x0380e573

last change scn: 0x0288.8e5a2f78 seq: 0x1 flg: 0x04

consistency value in tail: 0x00780601

check value in block header: 0x8739, computed block checksum: 0x2f00

spare1: 0x0, spare2: 0x0, spare3: 0x0

***

Reread of rdba: 0x0380e573 (file 14, block 58739) found same corrupted data

あるいは誤った検証とchecksum

 

Corrupt block relative dba: 0x0380a58f (file 14, block 42383)

Bad check value found during buffer read

Data in bad block –

type: 6 format: 2 rdba: 0x0380a58f

last change scn: 0x0288.7784c5ee seq: 0x1 flg: 0x06

consistency value in tail: 0xc5ee0601

check value in block header: 0x68a7, computed block checksum: 0x2f00

spare1: 0x0, spare2: 0x0, spare3: 0x0

***

Reread of rdba: 0x0380a58f (file 14, block 42383) found same corrupted data

 

あるいは誤ったブロックヘッダ

 

Corrupt block relative dba: 0x0d805a89 (file 54, block 23177)

Bad header found during buffer read

Data in bad block –

type: 6 format: 2 rdba: 0x0d805b08

last change scn: 0x0692.86dc08e3 seq: 0x1 flg: 0x04

consistency value in tail: 0x08e30601

check value in block header: 0x2a6e, computed block checksum: 0x0

spare1: 0x0, spare2: 0x0, spare3: 0x0

***

Reread of rdba: 0x0d805a89 (file 54, block 23177) found valid data

 

一部のORA-1578を引き起こす可能性があるBUGリストは以下の通り:

 

NB Bug Fixed Description
13804294 11.2.0.3.4, 11.2.0.3.BP07, 12.1.0.0 Internal errors, corruptions, using pipelined function whose rows raise exceptions
11707302 11.2.0.2.3, 11.2.0.2.BP06, 11.2.0.3, 12.1.0.0 Corruption from ASM crash during rebalance diskgroup. Misplaced Blocks
11659016 11.2.0.3, 12.1.0.0 ORA-1578 against recently create tablespace that once was encrypted
+ 10209232 11.1.0.7.7, 11.2.0.1.BP08, 11.2.0.2.1, 11.2.0.2.BP02, 11.2.0.2.GIBUNDLE01, 11.2.0.3, 12.1.0.0 ORA-1578 / ORA-600 [3020] Corruption. Misplaced Blocks and Lost Write in ASM
* 10205230 11.2.0.1.6, 11.2.0.1.BP09, 11.2.0.2.2, 11.2.0.2.BP04, 11.2.0.3, 12.1.0.0 ORA-600 / corruption possible during shutdown in RAC
9965568 12.1.0.0 Block dumps are not formatted if there is a chkval error
9965085 11.2.0.3, 12.1.0.0 ORA-1578 / ORA-8103 Temporary table block corruption / space wastage from PDML
9739664 11.2.0.2, 12.1.0.0 ORA-1578 / ORA-26040 MANUAL RECOVER marks block as corrupt NOLOGGING in even if LOGGING is enabled
+ 9724970 11.2.0.1.BP08, 11.2.0.2.2, 11.2.0.2.BP02, 11.2.0.3, 12.1.0.0 Block Corruption with PDML UPDATE. ORA_600 [4511] OERI[kdblkcheckerror] by block check
9407198 11.2.0.3, 12.1.0.0 “LOG ERRORS INTO” can cause ORA-600 [kcb***] or hang scenarios
* 9406607 11.2.0.1.3, 11.2.0.1.BP06, 11.2.0.2, 12.1.0.0 Corrupt blocks in 11.2 in table with unique key. OERI[kdBlkCheckError] by block check
* 8943287 11.2.0.2, 12.1.0.0 ORA-1578 corrupt block with AUTH SQL*Net strings
* 8898852 11.1.0.7.2, 11.2.0.1.1, 11.2.0.1.BP04, 11.2.0.2, 12.1.0.0 ORA-1578 Blocks misplaced in ASM when file created with compatible.asm < 11 and resized
8885304 11.2.0.2, 12.1.0.0 ORA-7445 [ktu_format_nr] during RMAN CONVERT or Corrupt fractured block of UNDO tablespace datafile
* 8768374 10.2.0.5, 11.1.0.7.8, 11.2.0.1.BP11, 11.2.0.2, 12.1.0.0 RFS in Standby with a wrong location for archived log corrupting/overwriting database files when max_connections > 1
8760225 11.2.0.2, 12.1.0.0 Auto Block Media Recovery reports ORA-1578 on first query
8731617 11.2.0.3, 12.1.0.0 ORA-1578 from DESCRIBE or CTAS even if table not accessed / ORA-959 from DBMS_STATS
8720802 10.2.0.5, 11.2.0.1.BP07, 11.2.0.2, 12.1.0.0 Add check for row piece pointing to itself (db_block_checking,dbv,rman,analyze)
8493978 11.2.0.2, 12.1.0.0 Reserve file descriptors for datafile access
P 12330911 12.1 EXADATA LSI firmware for lost writes
10025963 11.2.0.1.BP09, 11.2.0.2 Block corruption of LOB blocks with checksum value but block has checksum disabled
8714541 11.2.0.2 ORA-1578 Corrupt Block in ASM with 0xbadfda7a after ASM block repair due to disk read error when ASM mirror is used
13101288 ORA-600, corruption or check errors dropping a column in a OLTP compressed table
+ 8354682 11.2.0.1 ORA-1578 – Blocks can be misplaced in ASM when there is IO error and AU > 1MB
+ 8339404 10.2.0.5, 11.1.0.7.1, 11.2.0.1 ORA-1578 – Blocks can be misplaced in ASM during a REBALANCE
8227257 11.2.0.1 ORA-1578 corruption found after media recovery on encrypted datafile
7396077 10.2.0.5, 11.2.0.1 RMAN does not differentiate NOLOGGING corrupt blocks that produce ORA-1578/ORA-26040
6471351 10.2.0.5, 11.1.0.7, 11.2.0.1 ORA-1578 / ORA-26040 due to NOLOGGING after recovery despite of FORCE LOGGING
6674196 10.2.0.4, 10.2.0.5, 11.1.0.6 OERI / buffer cache corruption using ASM, OCFS or any ksfd client like ODM
5515492 10.2.0.3, 11.1.0.6 ORA-1578 corruption with Block Misplaced during ASM rebalance after IO error
5031712 10.2.0.4, 11.1.0.6 DBV enhanced to report NOLOGGING corrupt blocks with DBV-201 instead of DBV-200
+ 4724358 11.1.0.6 ORA-27045 ORA-1578 ORA-27047 corruption caused by DBMS_LDAP
4684074 10.2.0.2, 11.1.0.6 OERI:510 / block corruption (ORA-1578) with DB_BLOCK_CHECKING
4655520 9.2.0.8, 10.2.0.3, 11.1.0.6 Block corrupted during write not noticed
4411228 9.2.0.8, 10.2.0.3, 11.1.0.6 ORA-1578 Block misplaced with mixture of file system and RAW files
4344935 10.2.0.4, 11.1.0.6 OERI from DML on TEMPORARY TABLE after autonomous TRUNCATE
7381632 11.1.0.6 ORA-1578 Free corrupt blocks may not be reformatted when Flashback is enabled
8976928 10.2.0.5 ORA-1578 caused by a former free corrupt block and remains unformatted
8684999 10.2.0.5 ORA-1578 caused by a former free corrupt block and remains unformatted
+ 3544995 9.2.0.6, 10.1.0.3, 10.2.0.1 LOB segments with “CACHE READS” generate no REDO even with the logging option
+ 1281962 9.2.0.1 Media recovery after ORA-1578 on rollback can cause logical inconsistency
589855 7.3.3.6, 7.3.4.1 ORA:1578 or ORA:8103 selecting invalid ROWID
406863 7.3.3.4, 7.3.4.0, 8.0.3.0 ORA-1578 using PQ with heavy simultaneous INSERTS
P 707304 7.3.4.4 AIX: Resizing RAW datafile can corrupt a DB block
603502 7.3.4.3, 8.0.4.4, 8.0.5.0 Possible Corruption if a session with LOOPBACK DB Links aborts.

 

Comment

*

沪ICP备14014813号

沪公网安备 31010802001379号