oracle打补丁时的104、73、74

测试部打补丁报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=
    inst_group=

    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 Files\oracle (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%\oui\bin


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_NAME=""

> setup.exe -silent -ignoreSysPrereqs -attachHome ORACLE_HOME="" ORACLE_HOME_NAME=""

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 信息。


   。。。。。

你可能感兴趣的:(troubleshooting)