一、环境
OS: red hat enterprise 6.5
DB: oracle 11.2.0.4.0
二、问题
数据库服务器里面的锂电池坏了,更换。然后数据库是同事手动启动的,当天应用也恢复了,一切看似正常。第二天看日志和EM的情况,发现一个实例的状态是失败的。
日志如下错误
Linux-x86_64 Error: 6: No such device or address
Additional information: 9
SUCCESS: diskgroup DATA was dismounted
ERROR: diskgroup DATA was not mounted
ORA-01565: Unable to open Spfile +DATA/racdb/spfileracdb.ora.
ORA-15025: could not open disk “/dev/oracleasm/disks/DATA2”
ORA-27041: unable to open file
Linux-x86_64 Error: 6: No such device or address
Additional information: 9
SUCCESS: diskgroup DATA was dismounted
ERROR: diskgroup DATA was not mounted
ORA-01565: Unable to open Spfile +DATA/racdb/spfileracdb.ora.
Shutting down instance (abort)
License high water mark = 1
USER (ospid: 17052): terminating the instance
Instance terminated by USER, pid = 17052
Instance shutdown complete
三、处理
当时数据库检查也没发现其他异常。asm 磁盘组相关视图检查呢也是正常的。
EM的显示实例失败,显示的是监听失败。
然后查看,正常的
但是呢,到oracle里面查看监听是报错的。
尝试启动,失败
查看进程,是有三个进程。也没直接终止进程,
# ps -ef|grep LISTENER
使用root用户关闭实例:
# /opt/app/11.2.0/grid/bin/srvctl stop instance -d racdb -i racdb1,racdb2
使用root用户关闭集群:
# /opt/app/11.2.0/grid/bin/crsctl stop cluster -all
然后切换到oracle 用户,手动启动监听,正常了
启动集群,使用root用户:
# /opt/app/11.2.0/grid/bin/crsctl start cluster -all
启动实例,使用root用户:
# /opt/app/11.2.0/grid/bin/srvctl start instance -d racdb -i racdb1,racdb2
至此,一切正常。启动相关应用,完工。