What is oraInventory in Oracle 10g/11g:
=============================
You all might be familiar with
oraInventory & its importance so lets take a look at few common things
about it like binary/xml inventory, What to do if Inventory is corrupted , What is
global / Local Inventory and where to find documentation related to
oraInventory .
What is oraInventory ?
oraInventory is repository (directory) which store/records oracle software products & their oracle_homes location on a machine. This Inventory now a days in XML format and called as XML Inventory where as in past it used to be in binary format & called as binary Inventory.
There are basically two kind of Inventory Global Inventory (also called as Central Inventory) and Local Inventory also called as Oracle Home Inventory.
Global Inventory ?
Global Inventory holds information about Oracle Products on a Machine. These products can be various oracle components like database, oracle application server, collaboration suite, soa suite, forms & reports or discoverer server . This global Inventory location will be determined by file oraInst.loc in /etc (on Linux) or /var/opt/oracle (solaris). If you want to see list of oracle products on machine check for file inventory.xml under ContentsXML in oraInventory (Please note if you have multiple global Inventory on machine check all oraInventory directories)
You will see entry like
HOME NAME="ORA10g_HOME" LOC="/u01/oracle/10.2.0/db" TYPE="O" IDX="1"/
...
...
Local Inventory
Inventory inside each Oracle Home is called as local Inventory or oracle_home Inventory. This Inventory holds information to that oracle_home only.
Can I have multiple Global Inventory on a machine ?
Quite common questions is that can you have multiple global Inventory and answer is YES you can have multiple global Inventory but if your upgrading or applying patch then change Inventory Pointer oraInst.loc to respective location. If you are following single global Inventory and if you wish to uninstall any software then remove it from Global Inventory as well.
What to do if my Global Inventory is corrupted ?
No need to worry if your global Inventory is corrupted, you can recreate global Inventory on machine using Universal Installer and attach already Installed oracle home by option
-attachHome
./runInstaller -silent -attachHome -invPtrLoc $location_to_oraInst.loc
ORACLE_HOME="Oracle_Home_Location" ORACLE_HOME_NAME="Oracle_Home_Name"
CLUSTER_NODES="{}"
Do I need to worry about oraInventory during oracle Apps 11i cloning ?
No, Rapid Clone will update both Global & Local Inventory with required information , you don't have to worry about Inventory during Oracle Apps 11i cloning.
What is oraInventory ?
oraInventory is repository (directory) which store/records oracle software products & their oracle_homes location on a machine. This Inventory now a days in XML format and called as XML Inventory where as in past it used to be in binary format & called as binary Inventory.
There are basically two kind of Inventory Global Inventory (also called as Central Inventory) and Local Inventory also called as Oracle Home Inventory.
Global Inventory ?
Global Inventory holds information about Oracle Products on a Machine. These products can be various oracle components like database, oracle application server, collaboration suite, soa suite, forms & reports or discoverer server . This global Inventory location will be determined by file oraInst.loc in /etc (on Linux) or /var/opt/oracle (solaris). If you want to see list of oracle products on machine check for file inventory.xml under ContentsXML in oraInventory (Please note if you have multiple global Inventory on machine check all oraInventory directories)
You will see entry like
HOME NAME="ORA10g_HOME" LOC="/u01/oracle/10.2.0/db" TYPE="O" IDX="1"/
...
...
Local Inventory
Inventory inside each Oracle Home is called as local Inventory or oracle_home Inventory. This Inventory holds information to that oracle_home only.
Can I have multiple Global Inventory on a machine ?
Quite common questions is that can you have multiple global Inventory and answer is YES you can have multiple global Inventory but if your upgrading or applying patch then change Inventory Pointer oraInst.loc to respective location. If you are following single global Inventory and if you wish to uninstall any software then remove it from Global Inventory as well.
What to do if my Global Inventory is corrupted ?
No need to worry if your global Inventory is corrupted, you can recreate global Inventory on machine using Universal Installer and attach already Installed oracle home by option
-attachHome
./runInstaller -silent -attachHome -invPtrLoc $location_to_oraInst.loc
ORACLE_HOME="Oracle_Home_Location" ORACLE_HOME_NAME="Oracle_Home_Name"
CLUSTER_NODES="{}"
Do I need to worry about oraInventory during oracle Apps 11i cloning ?
No, Rapid Clone will update both Global & Local Inventory with required information , you don't have to worry about Inventory during Oracle Apps 11i cloning.
What is
oraInventory
The Orainventory is
the location for the OUI's Book keeping
The inventory stores
information about.
- All the Oracle
software products installed on all ORACLE_HOMES on a machine
- Other non-oracle
products such as Java Runtime env's (JRE)
Binary OraInventory
Before OUI 2.X (or
11.5.7 or earlier)the inventory was binary, the binary orainvenory maintains in
inventory in binary format
XML Inventory
Starting from OUI 2.X
and 11.5.8 information in the inventory is stored in the Extensible Markup
Language (XML) format.
The XML format allows
easier diagnostic of the problem and faster loading of data.
XML inventory is
divided into 2 components.
- Global Inventory
Global Inventory
holds information about Oracle Products on a Machine, The inventory contains
the high level list of all oracle products installed on a machine such as
ORACLE_HOMES or JRE.
It doesn't have any
information about the details of patches applied on each ORACLE_HOMES.
There should be only
one per machine. Its locations is defined in the oraInst.loc in /etc (on Linux)
or /var/opt/oracle (solaris).
- Local Inventory
There is one Local
inventory per ORACLE_HOME.
Inventory inside each
Oracle Home is called as local Inventory or ORACLE_HOME Inventory. This
Inventory holds information to that ORACLE_HOME only.
Can I have multiple Global Inventories on a machine?
Can you have multiple
global Inventory and answer is YES you can have multiple global Inventory but
if your upgrading or applying patch then change Inventory Pointer oraInst.loc
to respective location.
If you are following
single global Inventory and if you wish to uninstall any software then remove
it from Global Inventory as well.
What to do if my Global Inventory is corrupted?
If your global
Inventory is corrupted, you can recreate global Inventory on machine using
Universal Installer and attach already Installed oracle home by option
-attachHome
./runInstaller
-silent -attachHome -invPtrLoc $location_to_oraInst.loc
ORACLE_HOME=Oracle_Home_Location ORACLE_HOME_NAME=Oracle_Home_Name
CLUSTER_NODES={}
Do I need to worry about oraInventory during oracle Apps 11i cloning ?
No, Rapid Clone will
update both Global & Local Inventory with required information, you don't
have to worry about Inventory during Oracle Apps 11i cloning.
How to Move oraInventory from one location to other?
Find the current
location of the central inventory (Normally $ORACLE_BASE/oraInventory):
Open the oraInst.loc
file in /etc and check the value of inventory_loc
cat /etc/oraInst.loc
inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall
Remark: The oraInst.loc file is simply a pointer to the location of the central inventory (oraInventory)
Remark: The oraInst.loc file is simply a pointer to the location of the central inventory (oraInventory)
Copy the oraInventory
directory to the destination directory
cp -Rp
/u01/app/oracle/oraInventory /u02/app/oracle/oraInventory
Edit the oraInst.loc
file to point to the new location
vi /etc/oraInst.loc
inventory_loc=/u02/app/oracle/oraInventory
inst_group=dba
OraInventory and its use
-:
In the oraInventory directory, the Installer keeps track of what
is installed, and information on how to deinstall products. Many of the
libraries needed to run the Installer are also in this directory. The Oracle
Installer uses the "oraInst.loc" file to determine the location of
the oraInventory directory. If this file is blank or contains an invalid entry
the Installer will give an error about unable to find oraInventory or may
provide an incomplete listing of installed products.
The oraInventory directory must be owned by the user root.
Oracle Universal Installer (OUI) uses oraInventory directory as a repository of the Oracle products that are installed on your machine.
The oraInventory directory must be owned by the user root.
Oracle Universal Installer (OUI) uses oraInventory directory as a repository of the Oracle products that are installed on your machine.
OraInventory Directory
The installer creates the oraInventory directory the first time
it is run on your computer. The oraInventory directory keeps an inventory of products that the installer
installs on your computer as well as other installation information. If you
have previously installed Oracle products, then you may already have an oraInventory
directory.
- When a UNIX group name is
specified, it grants that group the permission to write to the oraInventory directory. If another group
attempts to run the installer, then they must have permission to write to
the oraInventory
directory. If they do not have permission the installation will fail.
- Be sure the user running the
installer has permission to write to the oraInventory directory and all its files. This
is required to run the installer.
- The location of oraInventory is defined in /etc/oratab/oraInst.loc for HP 9000
Series HP-UX and AIX-Based Systems.
- The location of oraInventory is defined in /var/opt/oraInst.loc for Sun Solaris.
- The latest log file is oraInventory_location/logs/installActions.log. Log file names of previous installation sessions take the form installActionsdatetime.log.
No comments:
Post a Comment