oracle asm disk被格式化为ntfs文件系统
数据库实例日志: Tue Mar 01 12:18:12 2016 SUCCESS: diskgroup ORADISKGRP1 was dismounted SUCCESS: diskgroup ORADISKGRP1 was dismounted Errors in file C:\APP\ORACLE\PRODUCT\11.2.0\diag\rdbms\bflex\bflex1\trace\bflex1_ckpt_6376.trc: ORA-00206: error in writing (block 3, # blocks 1) of control file ORA-00202: control file: '+ORADISKGRP1/bflex/controlfile/current.287.925642037' ORA-15078: ASM diskgroup was forcibly dismounted ORA-15078: ASM diskgroup was forcibly dismounted 再看asm日志 Tue Mar 01 12:18:12 2016 ASM Health Checker found 1 new failures Dirty Detach Reconfiguration complete Tue Nov 01 12:18:12 2016 WARNING: dirty detached from domain 1 NOTE: cache dismounted group 1/0x5DD073B7 (ORADISKGRP1) SQL> alter diskgroup ORADISKGRP1 dismount force /* ASM SERVER:1573942199 */ Tue Nov 01 12:18:12 2016 NOTE: cache deleting context for group ORADISKGRP1 1/0x5dd073b7 GMON dismounting group 1 at 6 for pid 30, osid 7684 NOTE: Disk ORADISKGRP1_0000 in mode 0x7f marked for de-assignment NOTE: Disk ORADISKGRP1_0001 in mode 0x7f marked for de-assignment NOTE: Disk ORADISKGRP1_0002 in mode 0x7f marked for de-assignment SUCCESS: diskgroup ORADISKGRP1 was dismounted SUCCESS: alter diskgroup ORADISKGRP1 dismount force /* ASM SERVER:1573942199 */ SUCCESS: ASM-initiated MANDATORY DISMOUNT of group ORADISKGRP1 这里的asm日志很明显由于asm disk无法正常访问,报ORA-27072错误,磁盘组被强制dismount. 一般出现这样故障的原因大多都是人为误操作造成的,比如挂到A机的裸盘被挂至B机,然后被误格式化。 处理办法: 先用kfed恢复磁盘头 C:\Users\Administrator> kfed repair '\\.\J:' C:\Users\Administrator>kfed read '\\.\J:' kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh. type : 1 ; 0x002: KFBTYP_DISKHEAD kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 254 ; 0x004: T=0 NUMB=0xfe kfbh.block.obj: 2147483654 ; 0x008: TYPE=0x8 NUMB=0x6 kfbh.check: 717599272 ; 0x00c: 0x2ac5b228 kfbh.fcn.base: 0 ; 0x010: 0x00000000 kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 kfbh.spare1: 0 ; 0x018: 0x00000000 kfbh.spare2: 0 ; 0x01c: 0x00000000 kfdhdb.driver.provstr: ORCLDISKDATA6 ; 0x000: length=13 kfdhdb.driver.reserved[0]: 1096040772 ; 0x008: 0x41544144 kfdhdb.driver.reserved[1]: 54 ; 0x00c: 0x00000036 kfdhdb.driver.reserved[2]: 0 ; 0x010: 0x00000000 kfdhdb.driver.reserved[3]: 0 ; 0x014: 0x00000000 kfdhdb.driver.reserved[4]: 0 ; 0x018: 0x00000000 kfdhdb.driver.reserved[5]: 0 ; 0x01c: 0x00000000 使用asmtool -list查看相关磁盘信息 然后用dbv检测是否有坏块,没有就好办了。幸好asm有备份,用备份恢复即可。 SQL> recover database ; 完成介质恢复。 SQL> alter database open ; 数据库已更改。