分类: Oracle
2008-09-01 15:29:43
当oraInventory建在share fs时
今天再安装rac11g的数据库软件部分时,遇到下面的错误。
意思是说$ORACLE_BASE/oraInventory不应该放在cfs 上,但我之间装crs也是建在cfs,oracle没有提醒,到了装oracle软件部分才提示,oracle这一点做得不厚道。因为oraInventory默认就是建在ORACLE_Base之下的,我的ORACLE_Base就是建在shared filesystem之下,这时候我可不想重新删掉crs再装一次。
到网上google一下, 查得oraInventory的由来。
The Oracle Inventory directory (oraInventory) stores an inventory of all software installed on the system. It is required by, and shared by, all Oracle software installations on a single system. The first time you install Oracle software on a system, Oracle Universal Installer prompts you to specify the path to this directory. If you are installing the software on a local file system, then Oracle recommends that you choose the following path:
oracle_base/oraInventory
If the Oracle base directory is on a cluster file system, or on an NFS file system on a NAS device, then you must specify a path for the Oracle Inventory directory on a local file system. The Oracle base directory must be on a local file system to enable all of the nodes to have separate inventories.
Oracle Universal Installer creates the directory that you specify, and sets the correct owner, group, and permissions for it. You do not need to create it.
What has changed with the 10.2.0.4 Installer is that Oracle now enforces this restriction. What I believe is that without this being enforced , there was a possibility of running into Central Inventory corruption issues when Clustered and Non-Clustered installs were being done on the same node.
Metalink 对central inventory on a shared location的解释,oracle算作一个bug,据说这个bug将在11.2上被修正。
It is not supported to have central inventory on a shared location. There was a bug.5009954 "OUI SHOULD ENFORCE SEPARATE CENTRAL INVENTORY LOCATIONS IN RAC" filled on this issue. This bug is fixed in 11.2. It is actually an OUI issue which doesn't perform a check to make sure that central inventory location is not on shared device.
In order to fix the inventory, you can change the OH/oraInst.loc in the CRS home to point to a non-shared directory.
Run
Vishwa
其实可以不用上面的方法来解决这个问题。
主要的步骤:
1)退出rac 安装 欧oui
2)修改/etc/oraInst.loc,将其指向改为 本地(集群上的每个节点都要做)
3)将共享节点上的oraInventory目录拷到本地节点上(集群上的每个节点都要做)
4)重新启动安装界面
下面是sample
thoribm75# more oraInst.loc
inventory_loc=/oracle/oraInventory
inst_group=oinstall
thoribm75#
thoribm75#
thoribm75# vi /etc/oraInst.loc
"/etc/oraInst.loc" 2 lines, 55 characters
inventory_loc=/local/oracle/oraInventory
inst_group=oinstall
thoribm75# rcp oraInst.loc thoribm76:/etc/
thoribm75# rcp oraInst.loc thoribm78:/etc/
thoribm75# rcp oraInst.loc thoribm79:/etc/
cd /oracle;cp -rp oraInven* /local/oracle/