RAC环境需要两个节点配合工作,一旦网络出现故障可能会导致RAC环境的故障。
为了检查网络故障可能导致的问题,特意测试了一下各种网络故障情况下对RAC的影响。
环境Oracle 10203 RAC for Solaris 10 Sparc,采用的是Oracle的Cluster Ware。
模拟网络故障的方法是将网卡DOWN掉或直接拔掉网线的方式,这些步骤就不重现了。这里只是简单记录一下最后的测试结果。
节点1:racnode1,节点2:racnode2。
如果停掉节点1或节点2的PRIVATE网卡,那么会导致racnode2节点直接reboot,节点2上配置的vip会临时加载到节点1上;
如果拔掉节点1和节点2之间的心跳线,那么会导致racnode2节点reboot,节点2上配置的vip会临时加载到节点1上;
如果拔掉节点2的PUBLIC网线,那么会导致racnode2节点reboot,节点2上配置的vip会临时加载到节点1上;
如果拔掉节点1上的PUBLIC网线,那么会导致racnode1上的数据库进程被停止,同时节点1上配置的vip会临时加载到节点2上。
根据上面的测试结果可以发现,Oracle的RAC虽然没有区别主、从实例的区分,但是对于Oracle的Cluster Ware还是有主、从节点的区分的。而且明显节点1是主节点,一旦发生网络故障,除非是主节点本身的PUBLIC网络出现了问题,否则为了保证Cluster的一致性,Oracle采用了重启从节点的方式。而对于主节点的故障,Oracle仅仅是关闭数据库实例,并将vip切换到其他节点,而没有采用重启的方式。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-69249/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/4227/viewspace-69249/