读书人

Oracle击PSU时可能会遇到数据库是tar过

发布时间: 2013-09-06 10:17:17 作者: rapoo

Oracle打PSU时可能会遇到数据库是tar过来的, 非正常安装的
重建Inventory(升级时遇到tar的oracle)什么是Inventory? 是oracle OUI用来管理Oracle安装目录的。 Inventory里注册了某个ORACLE_HOME下安装的数据库的组件及版本。 Oracle数据库软件的升级,增删组件,都需要用到Inventory。
全局Inventory。在oraInst.loc文件中被指定(/etc/oraInst.loc 或者/var/opt/oracle/oraInst.loc)其中有两条内容:inventory_loc=/s01/oraInventory(全局Inventory所在目录) inst_group=oinstall 安装oracle的组的名称 inst_group参数十分重要,它会在link Oracle映像的时候被用到, 如果找个参数设置错了,那么link出来的Oracle映像就无法被正常使用在全局 Inventory目录/ContentsXML/inventory.xml文件中定义了所有Oracle Home的情况
去客户现场打补丁:]$cd $OACLE_HOME/OPatch]$./opatch lsInventory 正常显示的最后一句OPatch succeeded.如果出现OPatch cannot find a valid oraInst.loc…………等字样 OPatch failed with error code 104 则需询问客户,是否数据库是tar过来的这说明全局Inventory文件不存在在ORACLE_HOME下,也有一个本地Inventory,可以通过本地Inventory来重建一、 编辑一个oraInst.loc文件(放到/etc下) inventory_loc=/s01/oraInventory inst_group=oinstall二、目录转向ORACLE HOME下的oui/bin目录 ]$cd $ORACLE_HOME/oui/bin三、重建全局Inventory ]$./runInstaller -slient -ignoreSysprereqs -attachHome ORACLE_HOME="/s01/oracle/product/10.2.0/db_1" ORACLE_HOME_NAME="orcl" 这个命令支持10.2 11.2后,该命令不需要指定ORACLE_HOME_NAME了。 对于9i和10.1版本,如果丢失了全局Inventory 那么需要从一个类似的平台克隆一个Inventory过来。 参看metalink :"Cloning An Existing Oracle9i Release 2 (9.2.0.x) RDBMS Installation Using OUI" Oracle10G Release 1(10.1.0.X)

读书人网 >其他数据库

热点推荐