概述
测试部打补丁报OPatch failed with error code 104,错误的详细信息中可以看到端倪:
......
OPatch cannot find a valid oraInst.loc file to locate Central Inventory.
OPatch failed with error code 104
缺少oraInst.loc文件文件,该文件用来定义oraInventory的位置和oracle所属的用户组。在suse系统中,他的默认地址是在/etc/oraInst.loc
# cat /etc/oraInst.loc
inventory_loc=/home/oracle/zxindbf/oraInventory
inst_group=dba
该文件在oracle安装之前要手动创建并做好定义。oracle patch工具会工具这个配置文件寻找oracle安装路径,得到安装及其历史patch的信息,如果找不到该配置文件,就报104错误
手动创建该文件,填写如上信息之后:
LsInventorySession failed: OracleHomeInventory::load() gets null oracleHomeInfo
OPatch failed with error code 73。
说明oracle根据配置文件找到/home/oracle/zxindbf/oraInventory,但是该文件夹不存在或者并非oracle完全安装信息路径,这个时候需要工具metalink Doc id 556834.1来重建oraInventory(Central Inventory)
Steps To Recreate Central Inventory(oraInventory) In RDBMS Homes
STEP 1: Locating the central inventory
-
The location of the central inventory can be found from the central inventory pointer can be found from the file /etc/oraInst.loc (AIX and Linux) or /var/opt/oracle/oraInst.loc (Platform specific)
-
If an oraInst.loc file does not exist, then create one as below with the following entries:
inventory_loc=<location_for_oraInventory>
inst_group=<name_of_group_for_installtion>
Example:
inventory_loc=/u01/oracle/oraInventory
inst_group=oinstall
Note: Make sure that the Oracle Owner has proper permissions (755) on the location specified for the oraInventory.
STEP 2:
Remove the Central inventory (if it exists)
Use the following command to rename the oraInventory (Unix/Linux)
% mv oraInventory oraInventory_orig
Use the Windows Explorer or the "move" command to rename the Inventory (Windows) located under c:Program Filesoracle (default location)
STEP 3:
Change the directory to the oui location.
Use the following command to change the directory to the oui location.
(Unix/Linux): % cd $ORACLE_HOME/oui/bin
(Windows): > cd %ORACLE_HOME%ouibin
STEP 4:
Attaching the Home for Oracle Database 10.2.0.1 and above.
Execute runInstaller with -attachHome option for Oracle Home.
% ./runInstaller -silent -ignoreSysPrereqs -attachHome ORACLE_HOME="<Oracle_Home_Location>" ORACLE_HOME_NAME="<Name_Of _Oracle_Home>"
> setup.exe -silent -ignoreSysPrereqs -attachHome ORACLE_HOME="<Oracle_Home_Location>" ORACLE_HOME_NAME="<Name_Of _Oracle_Home>"
For Example:
ORACLE_HOME=/u01/app/oracle/product/10.2.0.3
ORACLE_HOME_NAME=OraDb10g_home1
% ./runInstaller -silent -ignoreSysPrereqs -attachHome ORACLE_HOME="/u01/app/oracle/product/10.2.0.3" ORACLE_HOME_NAME="OraDb10g_home1"
If you have more than one oracle home you have to repeat STEP 4 for all remaining Oracle Homes making sure to provide unique ORACLE_HOME_NAME's for each ORACLE_HOME.
/home/oracle/oracle10g/cfgtoollogs/opatch/opatch_history.txt中记录了历史patch 信息。
。。。。。
最后
以上就是诚心短靴为你收集整理的oracle打补丁时的104、73、74的全部内容,希望文章能够帮你解决oracle打补丁时的104、73、74所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复