ORA-15042 ASM disk N is missing from group number M
现象
操作系统异常重启之后,磁盘组未能正确mount。
手工mount报错,与日志中错误一致
ORA-15042: ASM disk "33" is missing from group number "2"
原因
操作系统重启后,ASM启动后无法mount磁盘组,报错说找不到对应的磁盘。
此种原因大致有:
- ASM_DISKSTRING设置不当,导致部分需要的ASM DISK没有被ASM_DISKSTRING找出来;
- 尝试add disk到某个diskgroup,但是过程中发生了问题或者中断了,此时基于某种考虑对该add的disk做了类似dd清理磁盘头,但是实际上diskgroup 的metadata中已经记录了该asm disk;
- 单纯的ASM Disk的header被损坏或者彻底丢失,其原因可能是存储IO故障或人为的误损坏asm disk header或者是OS工具的导致
分析
对于本案例,可能的原因1,只是发生了操作系统重启,参数未发生变化,磁盘路径未做过人为变更。
本例中磁盘管理使用multipath,使用friendly的alias名称。
但是检查发现,ASM中磁盘组中记录的磁盘名称信息变成了磁盘的ID信息,因此磁盘组发现不了对应的磁盘。
进一步检查multipath发现,该服务未能服务自启动。
解决方案
手工启动multipath并开启服务自启动。
service multipathd start
chkconfig multipathd on