Wednesday 22 May 2013

Oracle Inventory

I had a situation a short while back where i had to recreate the Oracle Inventory. The following information assisted me to recreated it. I'm not the creator of this but thought it was helpful
How to recreate oraInventory (Central Inventory) in RDBMS Homes if the central inventory is corrupted or lost?
Solution
STEP 1: Locating the central inventory
  • The location of the central inventory can be found from the central inventory pointer. Windows
  • By default the location of the Central inventory will be in "C:\Program Files\Oracle\Inventory"
  • The location of the central inventory can be found from the central inventory pointer can be found from the key "inst_loc".
  • The key can be found by : 
       1. Go to "Run" window (Press Windows Key + r) 
       2. Type "regedit" and enter 
       3. Expand HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE 
       4. Find the value of the key "inst_loc" 

    Note : The following command will also show the inventory pointer in Windows XP,2003 and Vista
  C:\>reg query HKLM\SOFTWARE\ORACLE /v inst_loc  

Unix/Linux
  • 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> 
 
Eg : inventory_loc=/u01/oracle/oraInventory inst_group=oinstall


Note : Make sure that the Oracle Owner have proper permissions(755) on location specified for the oraInventory

STEP 2: 
Take an backup of the Central inventory ( If 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)
  
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:   
  1. 1. 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 Eg : 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 homes you have to execute the STEP 4 with respective "ORACLE_HOME" and "ORACLE_HOME_NAME" for all the Oracle Homes.
  2. Attaching the Home for Oracle Database 11.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 Eg :ORACLE_HOME=/u01/app/oracle/product/11.2.0.1
% ./runInstaller -silent -ignoreSysPrereqs -attachHome ORACLE_HOME="/u01/app/oracle/product/11.2.0.1" ORACLE_HOME_NAME="OraDb10g_home1"
    • If you have more than one oracle homes you have to execute the STEP 4 with respective "ORACLE_HOME" and "ORACLE_HOME_NAME" for all the Oracle Homes.
Note :Recreation of Central Inventory in RDBMS Homes is only supported from 10.2.0.1.0 and later.No down time is required for recreating the global inventory (oraInventory)

No comments:

Post a Comment