联系我们 4000-77-43-77
oracle asm数据恢复方法
  • 2016-03-03

  如果ASM实例经常奔溃crash,且后台日志alert.log中发现如下错误信息的话,则有必要参考本篇文章了:

  NOTE: starting recovery of thread=1 ckpt=201.9904 group=2

  NOTE: starting recovery of thread=2 ckpt=139.4186 group=2

  Tue Dec 16 03:00:51 2008

  Errors in file /u01/app/oracle/product/10.2.0/asm/admin/+ASM/udump/+asm2_ora_15305.trc:

  ORA-00600: internal error code, arguments: [kfcChkAio01], [], [], [], [], [], [], []

  ORA-15196: invalid ASM block header [kfc.c:5552] [endian_kfbh] [2079] [2147483648] [1 != 0]

  Abort recovery for domain 2

  NOTE: crash recovery signalled OER-600

  ERROR: ORA-600 signalled during mount of diskgroup FLASH

  这个错误会导致 diskgroup被dismount,一般是由于bug 7589862 所造成。

  也可以通过trace文件中的stack call来进一步确认是否是该问题:

  kfcChkAio

  函数kfxdrvMount是mount diskgroup时调用,其属于ASM恢复层kfrcrv

  该错误的主要表现即是:

  ORA-00600: internal error code, arguments: [kfcChkAio01], [], [], [], [], [], [], []

  kfcChkAio01 表示IO操作因为无效的块而发生错误

  ORA-15196: invalid ASM block header [kfc.c:5552] [endian_kfbh] [2079] [2147483648] [1 != 0]

  上面的报错说明 无效的块

  其中

  endian_kfbh 是block header中的数据

  2079 ASM FILE NUMBER

  2147483648 ASM BLOCK NUMBER

  1 != 0 1 was the value found on the field referenced on the first argument, but 0 was the expected value.

  遇到该问题需要通过手工Patch ASM metadata来解决, 如果不熟悉ASM内部结构 ,那么建议请专业人员来操作。

分享


 

甲驭科技优势

甲驭科技丰富实战经验!值得信赖!