【Oracle ASM】ORA-15196: invalid ASM block header [kfc.c:9194] [check_kfbh]エラ解決

 

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

このトラブルの情報は以下の通り:

  1. 2より古いRAC環境で起こる
  2. あるmountされたdiskgroupからディスクを増やすあるいはドロップする時にlogでORA-15196エラが起こった。
  3. 一般的にlogでblk=2と示す。つまり、block number=2のmetadata blockがchecksumエラになった

 

例えば:

 

WARNING: cache read a corrupted block gn=27 dsk=3 blk=2 from disk 3NOTE: a corrupted block was dumped to /oracle/product/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_551.trcERROR: cache failed to read gn=27 dsk=3 blk=2 from disk(s): 3ORA-15196: invalid ASM block header [kfc.c:9194] [check_kfbh] [2147483651] [2] [2158748224 != 4194727149]System State dumped to trace file /oracle/product/diag/asm/+asm/+ASM1/trace/+ASM1_arb0_551.trcNOTE: cache initiating offline of disk 3 group 27

【Oracle ASM】ORA-15196 invalid ASM block header [kfc.c9194] [check_kfbh]エラ解析

  1. ここでは一般的にはBLK=2が割り当てテーブルを表し
  2. もしblk=#2ではなければ、この文で紹介した現場と相違が現れる。

 

16進数でダンプすれば第三のブロックにetoVのような文字が現れる。例えば:

 

dd if=/tmp/etoV.dd bs=4096 skip=2 count=1 | hexdump -C | grep etoV 1+0 records in1+0 records out4096 bytes (4.1 kB) copied, 1.6e-05 seconds, 256 MB/s00000600 65 74 6f 56 03 00 00 00 01 03 0b 01 00 00 00 00 |etoV…………| あるいは $ dd if=/tmp/etoV.dd bs=4096 skip=2 count=1 | od -t xz | grep etoV1+0 records in1+0 records out4096 bytes (4.1 kB) copied, 1.7e-05 seconds, 241 MB/s0003000 566f7465 00000003 010b0301 00000000 >etoV…………<

 

 

トラブルが原因はOSレベルのディスクパス配置エラかもしれない。システムを再起動した後によく現れる。その影響はCRSが起動するときにASMディスクをvote disk deviceと見なして、vote disk情報を間違えた設備に書き込む。

 

このトラブルに対して、high/normal redundancyの場合は解決しやすいが、 EXTERNAL redundancyの場合なら、人工的にpatch asm diskでリカバリする必要がある。

 

 

 

Comment

*

沪ICP备14014813号

沪公网安备 31010802001379号