- Normally, an oraInventory directory will be created in the system when we run the Oracle Universal Installer (OUI) first time on a system.
Oracle Inventory – oraInventory
- oraInventory is repository which stores the oracle software products and their home locations (ORACLE_HOME) in a system. This oraInventory is created on the first run of the Oracle Universal Installer in the system.
- There are two types of Inventories. They are,
- Global Inventory – which is also known as Central Inventory.
- Local Inventory – Oracle Home Inventory.
Global Inventory
- Global Inventory consists of the information of all the Oracle Products installed in a machine. inventory.xml is the file where it lists all the ORACLE_HOMEs installed in the system.
Local Inventory
- Each Oracle Home consists of its own Inventory File which is called the Local Inventory or Oracle Home Inventory. Each Oracle Inventory contains the information of its respective ORACLE_HOME.
- There is also a file called comps.xml,which contains all the components as well as patchsets or interim patches installed in the ORACLE_HOME.
Note:
- No down time is required to create the Global Inventory (oraInventory).
- If you have a corrupted or improper Oracle Inventory, you can rename it using the mv command as below.,
mv oraInventory oraInventory_Old
- To determine or find the oraInventory is location in the system open the file ‘oraInst.loc’. This file will be located in the below locations depending upon your platform.
/var/opt/oracle/oraInst.loc or /etc/oraInst.loc
- The file oraInst.loc looks as below,
/var/opt/oracle/oraInst.loc
inst_group=dba
inventory_loc=/app/oracle/oraInventory
ORACLE_HOME/oraInst.loc
inst_group=dba
inventory_loc=/apps/oracle/oraInventory
To find the ORACLE_HOME & ORACLE_HOME name
- You can view it from the old Oracle Inventory file located in
/app/oracle/oraInventory/ContentsXML/inventory.xml
cat /app/oracle/oraInventory/ContentsXML/inventory.xml
<?xml version=”1.0″ standalone=”yes” ?>
<!– Copyright (c) 2009 Oracle Corporation. All rights Reserved –>
<!– Do not modify the contents of this file by hand. –>
<INVENTORY>
<VERSION_INFO>
<SAVED_WITH>10.2.0.5.0</SAVED_WITH>
<MINIMUM_VER>2.1.0.6.0</MINIMUM_VER>
</VERSION_INFO>
<HOME_LIST>
<HOME NAME=”orahome_1″ LOC=”/app/oracle/product/10.2.0.5″ TYPE=”O” IDX=”1″/>
<HOME NAME=”agent10g” LOC=”/app/oracle/product/agent10g” TYPE=”O” IDX=”2″/>
</HOME_LIST>
</INVENTORY>
- Go to the Oracle Universal Installer location for creating the Oracle oraInventory,
$ORACLE_HOME/oui/bin
- If you have more than one Oracle product installed in your machine/system, then you have to update the inventory file for all the Oracle Home.
- When there is multiple Oracle Homes then, you have to run the oui in their respective homes separately.
$ ./runInstaller -silent -ignoreSysPrereqs -attachHome ORACLE_HOME=”/app/oracle/10.2.0.5″ ORACLE_HOME_NAME=”orahome_1″
Starting Oracle Universal Installer…
No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.
>>> Ignoring required pre-requisite failures. Continuing…
The inventory pointer is located at /var/opt/oracle/oraInst.loc
The inventory is located at /app/oracle/oraInventory
‘AttachHome’ was successful.
For example if you have Oracle agent installed in your machine, then you should run it in AGENT_HOME,
$AGENT_HOME/oui/bin
$ ./runInstaller -silent -ignoreSysPrereqs -attachHome ORACLE_HOME=”/app/oracle/product/agent10g” ORACLE_HOME_NAME=”agent10g”
Starting Oracle Universal Installer…
No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.
>>> Ignoring required pre-requisite failures. Continuing…
The inventory pointer is located at /var/opt/oracle/oraInst.loc
The inventory is located at /app/oracle/oraInventory
‘AttachHome’ was successful.