首页 > 数据库 > Oracle > OraInventory Rebuid
在UNIX上,有时OraInventory目录损坏了或被移除了,可以重建OraInventory目录
在UNIX查看ORACLE数据库的Inventory目录可以用如下方式:
1.查看/var/opt/oracle/oraInst.loc或/etc/oraInst.loc文件。
2.查看$ORACLE_HOME/oraInst.loc
3.运行$ORACLE_HOME/OPatch/opatch lsinventory -detail
如果丢失或发现OraInventory损坏,首先推荐从备份中恢复,本文提供的方法是基于OUI的。该方法只在ORACLE 10g的上实践过。该方法只作为一种选择。
如果OraInventory丢失或损坏,在UNIX系统上,使用以下步骤重建OraInventory目录。在正常安装中,有全局Inventory ($ORACLE_BASE/OraInventory)和本地Inventory($ORACLE_HOME/inventory)。
1.定位到oraInst.loc文件,不同平台可能有不同位置:
/var/opt/oracle/oraInst.loc或/etc/oraInst.loc文件
2.修改oraInst.loc文件
先把原来的文件复制一份,新建一个OraInventory目录
cp /var/opt/oracle/oraInst.loc /var/opt/oracle/oraInst.loc.bak
mkdir /u01/oracle/oraInventory
修改文件内容
inventory_loc=/u01/oracle/oraInventory
inst_group=oinstall
OraInventory通常在$ORACLE_BASE目录下。例如,$ORACLE_HOME是/u01/oracle/product/10g,OraInventory通常是/u01/oracle/OraInventory
3.对新建文件修改适当的权限:
chmod 644 /var/opt/oracle/oraInst.loc
4.为了一致性,复制文件到$ORACLE_HOME目录:
cp $ORACLE_HOME/oraInst.loc $ORACLE_HOME/oraInst.loc.bak
cp /var/opt/oracle/oraInst.loc $ORACLE_HOME/oraInst.loc
如下运行$ORACLE_HOME的OUI:
cd $ORACLE_HOME/oui/bin; ./runInstaller -silent -attachHome
ORACLE_HOME="/u01/oracle/product/10.1.2" ORACLE_HOME_NAME="Ora10gHome"
增加的-attachHome,只在10.2或更高版本有效。以上使用了在安装时,指定的$ORACLE_HOME目录和ORACLE home的名称。
5.检查输出的inventory是否正确;$ORACLE_HOME/OPatch/opatch lsinventory -detail
6.如果以上输出的是正确的目录,ORACLE home的详细组件也正常。那么说明已经修改成功了。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26179376/viewspace-1981718/ ,如需转载,请注明出处,否则将追究法律责任。