首页 > 代码库 > 【翻译自mos文章】rac数据库中,HC_<SID>.dat文件被其他Oracle_Home下的实例所使用。

【翻译自mos文章】rac数据库中,HC_<SID>.dat文件被其他Oracle_Home下的实例所使用。



rac数据库中,HC_<SID>.dat文件被其他Oracle_Home下的实例所使用。


参考原文:
RAC database HC_<SID>.dat is used by instance of different Oracle_Home (Doc ID 1618161.1)


适用于:
Oracle Database - Enterprise Edition - Version 11.2.0.0 and later
Information in this document applies to any platform.


症状:
在cluster环境中,不同的Oracle Home下运行着不同而database


一个数据库的health check file (hc_<sid>.dat) 文件被其他Oracle Home下的实例所使用。


hc_<SID>.dat files is shared with other databases' instances. 
 Example :
-----------
#lsof /u0n
 
 COMMAND   PID          USER   FD   TYPE DEVICE  SIZE/OFF  NODE NAME 
 oracle           8167      oracle   60r  VREG 388,50     1544 48967 hc_sqa2d101.dat
 oracle           8167      oracle   72r  VREG 388,50     1544 78760 hc_sqa2e101.dat
 ...
  oracle          8563      oracle   60r  VREG 388,50     1544 48967 hc_sqa2d101.dat
  oracle          8563      oracle   72r  VREG 388,50     1544 78760 hc_sqa2e101.dat
 ...
 oracle          20049     oracle   60r  VREG 388,50     1544 48967 hc_sqa2d101.dat ===> ora_pz99_s20dv101
 oracle          20049     oracle   72r  VREG 388,50     1544 78760 hc_sqa2e101.dat ===> ora_pz99_s20dv101 
 .
 hc_sqa2e101.dat file is used by ora_pz99_s20dv101 of s20dv101 instance.

#ps -ef | egrep ' 8167 | 8563 |20049'

   oracle  8167     1   0 23:45:33 ?           0:11 ora_cjq0_sqa1d101
   oracle  8563     1   0 23:46:54 ?           0:02 ora_smco_sqa1e101
   oracle  1074 28732   0 12:04:05 pts/1       0:00 egrep  8167 | 8563 |20049
   oracle 20049     1   0 00:24:22 ?           0:25 ora_pz99_s20dv101



这个现象在Oracle Restart/SIHA node中也会发生。


变更:
Out-of-place 迁移。


在经过Out-of-place 的升级之后,旧的文件系统不能被unmount掉,原因是它还在使用中。
在 老的 ORACLE_HOME/dbs 目录下的 文件 hc_<instance_name>.dat 被其他实例的很多进程锁定。


原因:
This is reported in


BUG 14351771 - HC_<SID>.DAT SHARED WITH OTHER DATABASES


which is duplicate of unpublished bug 12792223.
 
解决方案:
应用补丁:12792223.


该bug 在11.2.0.4以及更高版本中被解决。