Oracle 11gR2光钎链路切换crs服务发生crash
背景:
我们将Oracle 11gR2(11.2.0.4)在RedHat EnterPrise 5.8上通过RDAC完成的多路径链路冗余,在部署完成后,我们需要做多路径链路冗余测试,我们的光钎链路连接方式如下。我们做多路径测试完成了如下几个组合:
拔线测试组合一:
1、 先拔下光钎链路 ②和④ 一切正常没有问题;插上五分钟后执行第2步。
2、 再拔下光钎链路 ①和③ 数据库服务正常,crs进程crash无法访问,手工重启crs进程即可。
拔线测试组合二:
1、 先拔下光钎链路 ①和③ 一切正常没有问题;插上五分钟后执行第2步。
2、 再拔下光钎链路 ②和④ 数据库服务正常,crs进程crash无法访问,手工重启crs进程即可。
拔线测试组合三:
1、 先拔下光钎链路 ①和④ 一切正常没有问题;插上五分钟后执行第2步。
2、 再拔下光钎链路 ②和③ 一切正常没有问题;
拔线测试组合四:
1、 先拔下光钎链路 ②和③ 一切正常没有问题;插上五分钟后执行第2步。
2、 再拔下光钎链路 ①和④ 一切正常没有问题;
控制器切换测试组合:
1、 进入存储管理控制台,查看当前磁盘所在控制器为A控,手动全部切换到B,一切正常没有问题。
2、 五分钟之后,再次进入存储管理控制台,将所有磁盘从B控制器切换到A控制器,一切正常没有问题。

问题现象:
问题发生在第一组和第二组的的测试2上面,问题现象如下:
[grid@db01 ~] $ crs_stat -t -v
CRS-0184: Cannot communicate with the CRS daemon.
[root@db01 ~]# ps -ef|grep ora
oracle 2687 1 0 00:12 00:00:00 ora_pmon_woo
oracle 2689 1 0 00:12 00:00:00 ora_psp0_woo
oracle 2691 1 0 00:12 00:00:00 ora_vktm_woo
oracle 2695 1 0 00:12 00:00:00 ora_gen0_woo
oracle 2697 1 0 00:12 00:00:00 ora_diag_woo
oracle 2699 1 0 00:12 00:00:00 ora_dbrm_woo
oracle 2701 1 0 00:12 00:00:00 ora_dia0_woo
oracle 2703 1 0 00:12 00:00:00 ora_mman_woo
oracle 2705 1 0 00:12 00:00:00 ora_dbw0_woo
oracle 2707 1 0 00:12 00:00:00 ora_lgwr_woo
oracle 2709 1 0 00:12 00:00:01 ora_ckpt_woo
oracle 2711 1 0 00:12 00:00:00 ora_smon_woo
oracle 2713 1 0 00:12 00:00:00 ora_reco_woo
oracle 2715 1 0 00:12 00:00:00 ora_mmon_woo
oracle 2717 1 0 00:12 00:00:00 ora_mmnl_woo
oracle 2719 1 0 00:12 00:00:00 ora_d000_woo
oracle 2721 1 0 00:12 00:00:00 ora_s000_woo
oracle 2728 1 0 00:12 00:00:00 ora_rvwr_woo
SQL> select host_name,instance_name,status from gv$instance;
HOST_NAME INSTANCE_NAME STATUS
---------- ---------------- ------------
db01 woo OPEN
db02 woo OPEN
日志排查:
OSmessage:
Oct 30 13:48:23 db01 kernel: lpfc 0000:1b:00.0: 1:(0):0203 Devloss timeout on WWPN 20:34:00:80:e5:3f:7b:f0 NPort x0000e4 Data: x0 x7 x0
Oct 30 13:48:23 db01 kernel: 94 [RAIDarray.mpp]oracledb:0:0:0 Selection Retry count exhausted
Oct 30 13:48:23 db01 kernel: 7 [RAIDarray.mpp]oracledb:0:0 Path Failed
Oct 30 13:48:23 db01 kernel: 496 [RAIDarray.mpp]oracledb:0:0:0 No new path: fall to failover controller case. vcmnd SN 74635 pdev H8:C0:T0:L0 0x00/0x00/0x00 0x00010000 mpp_status:6
Oct 30 13:48:23 db01 kernel: 497 [RAIDarray.mpp]oracledb:0:0:0 Failed controller to 1. retry. vcmnd SN 74635 pdev H8:C0:T0:L0 0x00/0x00/0x00 0x00010000 mpp_status:6
Oct 30 13:48:23 db01 kernel: 94 [RAIDarray.mpp]oracledb:0:0:0 Selection Retry count exhausted
Oct 30 13:48:23 db01 kernel: 496 [RAIDarray.mpp]oracledb:0:0:0 No new path: fall to failover controller case. vcmnd SN 74625 pdev H8:C0:T0:L0 0x00/0x00/0x00 0x00010000 mpp_status:6
Oct 30 13:48:23 db01 kernel: 497 [RAIDarray.mpp]oracledb:0:0:0 Failed controller to 1. retry. vcmnd SN 74625 pdev H8:C0:T0:L0 0x00/0x00/0x00 0x00010000 mpp_status:6
Oct 30 13:48:23 db01 kernel: 94 [RAIDarray.mpp]oracledb:0:0:1 Selection Retry count exhausted
Oct 30 13:48:23 db01 kernel: 496 [RAIDarray.mpp]oracledb:0:0:1 No new path: fall to failover controller case. vcmnd SN 74645 pdev H8:C0:T0:L1 0x00/0x00/0x00 0x00010000 mpp_status:6
Oct 30 13:48:23 db01 kernel: 497 [RAIDarray.mpp]oracledb:0:0:1 Failed controller to 1. retry. vcmnd SN 74645 pdev H8:C0:T0:L1 0x00/0x00/0x00 0x00010000 mpp_status:6
Oct 30 13:48:23 db01 kernel: 94 [RAIDa