为了保证RAC环境下如果一个节点出问题,客户端能漂移到其他节点,Oracle引入了VIP的配置。但在个别版本中,实例对VIP的依赖却可能因为VIP出现问题导致实例崩溃。从10203开始可以手动取消实例对VIP的依赖,而10204已经取消了这个依赖关系。
以下信息是数据库实例crash的记录:
Sun Feb 14 20:07:18 2010
Shutting down instance (abort)
License high water mark = 381
Instance terminated by USER, pid = 619164
取消实例依赖VIP的方法是导出实例部分的资源配置,修改后再注册回去。步骤如下:
DB1@/home/oracle>crs_stat -p ora.racdb.rac1.inst >> /tmp/ora.racdb.rac1.inst.cap
然后编辑这个文件,去掉对vip的依赖:
DB1@/home/oracle>vi /tmp/ora.racdb.rac1.inst.cap
REQUIRED_RESOURCES= 这里设为空
然后再注册回去:
DB1@/home/oracle>crs_register -u ora.racdb.rac1.inst -dir /tmp
所有的节点都需要修改,再用crs_stat -p命令查看已经生效了。如果RAC环境中断网引起的实例崩溃,很可能就是这个问题。