Database environment :oracle 11.2.0.1 standalone with ASM on solaris 10 sp2
【问题来源】
因主机硬件(富士通pp650机器比较老)磁盘故障系统crash,检查发现该系统的硬盘阵列为raid1,由于其中一块镜像盘故障(非损坏)导致系统无法启动到 RW状态,状态为readonly。系统工程师通过console进入系统将boot 引导盘更改为另一盘符后,OS启动正常,但oracle database 没有随OS 一起启动。
【database 检查】
无任何日志更新,手动启动OHAS 服务,报错:
grid@/home/gird>crsctl start has
CRS-4124: Oracle High Availability Services startup failed.
CRS-4000: Command Start failed, or completed with errors
|
【注意】此时没有任何日志出现更新,通过网上翻阅,有csdn网友认为这是一个11.2.0.1 的bug(具体bug号还未找到),与/var/tmp/.oracle的 npohasd文件有关
【处理方法】如果是rac 请在 每个节点上分别操作
方法1.dd /var/tmp/.oracle/npohasd 文件
【root@oradb1】 dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1 |
时间较长,但不用去中断(此时可以去看grid_home/log/hostname/ohasd/ 日志已经开始更新),可进行下一步手动启动has服务的操作:
grid@/home/gird>crsctl start has grid@/home/grid>ps -ef|grep has grid 1690 1 0 18:07:31 ? 2:23 /ora/u01/oracle/product/11.2/grid/bin/ohasd.bin reboot grid 1701 1 0 18:07:33 ? 17:14 /ora/u01/oracle/product/11.2/grid/bin/oraagent.bin grid 9637 1 1 19:23:20 ? 7:42 /ora/u01/oracle/product/11.2/grid/bin/tnslsnr LISTENER -inherit ..... |
方法2.删除 /var/tmp/.oracle/npohasd 文件后重启has 服务,has 即可正常启动。