Oracle RAC 11.2.0.3 节点CRS无法启动报:no network hb 故障解决方法

来源:互联网 发布:北京域名备案的时间 编辑:程序博客网 时间:2024/05/20 04:09
软件版本:oracle rac 11.2.0.3,补丁打到最新11.2.0.3.5
故障现象:Oracle双节点组成RAC,RAC软件安装在节点1上;运行一段时间后,节点2日志报“网络通信故障”长时间无法与节点1通信,而被踢出集群。经尝试各种方法反复重试,无法在节点2上启动CRS服务,其中,每次启动CRS服务时,命令./crsctl stat res -t -init 查看发现ora.cssd长时间处于STARTING状态,ora.cssd反复尝试启动大约2个小时后,ora.cssd进程启动失败;
此时:两个节点服务器运行正常,网络正常,心跳线连通正常,节点1运行正常,节点二crs无法启动;重启节点2服务器仍然无法解决问题。
查看$GRID_HOME/log/node2name/cssd/ocssd.log文件,重复出现以下错误
--------------------------------------------------
2010-09-20 11:52:54.014: [    CSSD][1103055168]clssnmvDHBValidateNCopy: node 1, racnode1,has a disk HB, but no network HB, DHB has rcfg 180441784, wrtcnt, 453, LATS 328297844, lastSeqNo 452, uniqueness 1284979488, timestamp 1284979973/329344894
2010-09-20 11:52:54.016: [    CSSD][1078421824]clssgmWaitOnEventValue: after CmInfo State  val 3, eval 1 waited 0
-----------------------------
方法尝试:经过查找网上各种解决方法进行各种尝试后,在多名Oracle原厂工程师帮助下终究没能将节点2的CRS服务启动,检查操作系统,网络、心跳一直处于通畅状态。后来不得已,运来备用的数据库服务器,与被踢出集群的服务器重新安装操作系统,升级网卡固件,重新安装Oracle RAC软件,打上最新的RAC补丁包,安装数据库,并恢复数据。然后,经过反复拔插心跳线(包括交换机互联、直连)、重启服务器的暴力测试后(Oracle原厂工程师听说我们这种测试后彻底愤怒了!!!!),发现上述问题has a disk HB, but no network HB仍然存在!

不过可喜的是,我们发现一个重要规律
1、当两节点RAC正常运行时,首先拔掉心跳线一次,节点2被踢出集群;
2、15秒以后重新插上心跳线,节点2无法加入集群,ocssd.log日志报"has a disk HB, but no network HB";
3、此时不要灰心,再拔掉心跳线一次,15秒以后重新插上:天哪,竟然好啦!!
最终解决方案总结:
1、对于非需要长时间不间断运行的RAC数据库,可以同时重启两个节点服务器即可;
2、对于需要长时间不间断运行的RAC数据库,那就试试拔两次心跳线吧,一定是2次哦,或者更多次,绝对有意外惊喜!!

3、至于是不是CRS的bug,不清楚,有请大虾们指点。

此方法为原创方法,尚未申请专利,大家可放心使用!!
原创粉丝点击