数据库重启之后,asm盘符消失,数据库无法启动

发布时间:  2014-06-30 浏览次数:  349 下载次数:  11
问题描述
1、重启数据库RAC服务器DB1和DB2后ASM状态异常,数据库无法启动,进入grid用户执行视图执行asmca,无法弹出asm磁盘管理界面,ASM异常。
2、进入/dev目录,执行 ls –l asm*,返回值为空,数据库的asm盘符没有成功挂载。
3、执行命令:/etc/init.d/boot.udev status回显:Checking for udevd: running,udev服务运行正常。
4、使用root用户登录,执行fdisk –l,可以发通过iscsi映射的磁盘sdb~sde。
5、执行命令/etc/init.d/boot.udev stop停止udev服务,然后执行命令/etc/init.d/boot.udev start启动udev服务,asm盘符产生,ASM状态正常,数据库正常运行。
告警信息
处理过程
1、编写udev重启脚本,并命名为udevstopstart.sh,脚本内容如下:
sleep 60
/etc/init.d/boot.udev stop
sleep 30
/etc/init.d/boot.udev start
脚本涵义:延迟60停止udev服务,然后延迟30s启动udev服务。
2、将脚本加入开机自启动,编辑文件after.local,vi /etc/init.d/after.local,将如下语句加入文件su –root –c ‘/etc/init.d/udevstopstart.sh’.
3、赋予udevstopstart.sh脚本可执行权限。
chmod 777 udevstopstart.sh
4、分别重启两台数据库服务器,执行命令/etc/init.d/boot.udev status观察udev服务运行情况。观察结果udev停止30s后重新启动,说明udevstopstart.sh脚本生效。
5、根据eSpaceCC基础软件安装指南检查RAC状态、oracle监听状态、oracle实例状态均正常。
根因
数据库asm盘符采用udev方式建立,数据库所在服务器的操作系统重启后,udev设备启动较快,此时iscsi启动器尚未完成磁盘挂载,而采用udev的方法,只有被内核检测到的设备才会获取为它们创建的设备节点,且这些设备节点在每次系统启动时被创建,所以uedv无法找到磁盘并建立asm盘符,导致ASM无法找到asm盘符,数据库无法启动。
建议与总结

END