cancel
Showing results for 
Search instead for 
Did you mean: 

Oracle Inventory corrupted

Former Member
0 Kudos

We installed several QA systems (BI, GRS, Portal, ECC) with their ORACLE_HOME's within the same UNIX box but when SAP ask for each ORACLE_HOME's name and path's to install we mistakenly don't change the name and just the path so the only recognized installation in the inventory is the last one.

Because of the above the oracle opatch utility is getting the following error with all but with the last one. So we cannot do patching to this instances. Can any one suggest a solution to re-inventory all oracle home's with the proper names?

$ $ORACLE_HOME/OPatch/opatch lsinventory

Invoking OPatch 10.2.0.2.0

Oracle interim Patch Installer version 10.2.0.2.0

Copyright (c) 2005, Oracle Corporation. All rights reserved..

Oracle Home : /oracle/QR1/102_64

Central Inventory : /oracle/oraInventory

from : /etc/oraInst.loc

OPatch version : 10.2.0.2.0

OUI version : 10.2.0.2.0

OUI location : /oracle/QR1/102_64/oui

Log file location : /oracle/QR1/102_64/cfgtoollogs/opatch/opatch-2008_May_07_11-27-00-EDT_Wed.log

List of Homes on this system:

Home name= OUIHome1, Location= "/oracle/QG1/102_64"

Inventory load failed... OPatch cannot load inventory for the given Oracle Home.

Possible causes are:

Oracle Home dir. path does not exist in Central Inventory

Oracle Home is a symbolic link

Oracle Home inventory is corrupted

LsInventory Session failed: OracleHomeInventory::load() gets null oracleHomeInfo

OPatch failed with error code 72

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Just to let you know guy's, the problem is fixed now by following the next procedure.

Goal: For each Oracle/SAP database within the server use one

independent Central inventory (/oracle/<SID>/oraInventory)

Steps for each ORACLE_HOME installed

0. Rename the old oraInventory directory (just one time & optional)

1. Create one new oraInventory dir at /oracle/<SID>/oraInventory

2. Create one new oraInst.loc pointing at oraInventory created

3. Recreate the Central Inventory by running the runInstaller as

established in the metalink note Note:556834.1 step 4 and adding the

label -invPtrLoc pointing at the new oraInst.loc file location.

Basically the 3rd point looks like this.

$ ./runInstaller -silent -invPtrLoc /oracle/QP1/oraInst.loc ignoreSysPrereqs -attachHome ORACLE_HOME="/oracle/QP1/102_64" ORACLE_HOME_NAME="OUIHome1"

Starting Oracle Universal Installer...

No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.

-


0: 108 /, /dev/hd4, -, rw,log=/dev/hd8, 0

One invalid entry

-


1: 112 /usr, /dev/hd2, -, rw,log=/dev/hd8, 0

One invalid entry

...

.... (lots of output here)

...

One invalid entry

The inventory pointer is located at /oracle/QP1/oraInst.loc

The inventory is located at /oracle/QP1/oraInventory

'AttachHome' was successful.

$ $ORACLE_HOME/OPatch/opatch lsinventory -invPtrLoc /oracle/QP1/oraInst.loc

Invoking OPatch 10.2.0.2.0

Oracle interim Patch Installer version 10.2.0.2.0

Copyright (c) 2005, Oracle Corporation. All rights reserved..

Oracle Home : /oracle/QP1/102_64

Central Inventory : /oracle/QP1/oraInventory

from : /oracle/QP1/oraInst.loc

OPatch version : 10.2.0.2.0

OUI version : 10.2.0.2.0

OUI location : /oracle/QP1/102_64/oui

Log file location : /oracle/QP1/102_64/cfgtoollogs/opatch/opatch-2008_May_08_22-51-27-EDT_Thu.log

Lsinventory Output file location : /oracle/QP1/102_64/cfgtoollogs/opatch/lsinv/lsinventory-2008_May_08_22-51-27-EDT_Thu.txt

-


Installed Top-level Products (2):

Oracle Database 10g 10.2.0.1.0

Oracle Database 10g Release 2 Patch Set 1 10.2.0.2.0

There are 2 products installed in this Oracle Home.

There are no Interim patches installed in this Oracle Home.

-


OPatch succeeded.

*Thanks again for your support.*

Eduardo.

Former Member
0 Kudos

Thanks agains. In this case how do you configure the oraInst.loc file since you don't have one central inventory for all installations? Do you use a flag with opatch that points to an independant oraInst.loc file as well?

Regards.

Eduardo.

former_member204746
Active Contributor
0 Kudos

easiest way is to complete uninstall Oracle and its inventory directories... then re-install with all patches.

Former Member
0 Kudos

Thanks for your help, very useful. Before I try to implement this solution I have an other question.

Since the corrupted inventory seems to be the central and since they all have locally the same Oracle Home Name, do I need first to change the Local Oracle Home Name before I try to recreate the central?, I mean, do the local inventory have a name like OraDBb10g_home1 that needs to be adjusted as well or is just for the central configuration?

Regards.

Eduardo.

stefan_koehler
Active Contributor
0 Kudos

Hello Eduardo,

that's the way i do:

  • Local inventory: /oracle/<SID>/102_xx/inventory

  • Central inventory: /oracle/<SID>/oraInventory

In this case the central inventory is independent from any other oracle installation.

> Do I need first to change the Local Oracle Home Name before I try to recreate the central?

Sorry, i don't understand this question.

> I mean, do the local inventory have a name like OraDBb10g_home1 that needs to be adjusted as well or is just for the central configuration?

No, the name that is used in the example of metalinknote #556834.1 is the "<ORACLE_HOME_NAME>".

http://download.oracle.com/docs/cd/B19306_01/em.102/b16227/c_oui_appendix.htm#sthref529

<ORACLE_HOME_NAME> - This is used to specify the ORACLE HOME name in the target machine.

Regards

Stefan

stefan_koehler
Active Contributor
0 Kudos

Hello Eduardo,

> Can any one suggest a solution to re-inventory all oracle home's with the proper names?

It depends on which inventory is corrupted.. if the central inventory is corrupted, you maybe can recreate it out of the local inventory.. but if the local inventory is corrupted - no way.

  • Local inventory: $ORACLE_HOME/inventory

  • Central inventory: The location is defined by the content of oraInst.loc

You can try to rebuild the central inventory and try opatch again. Please take a look at metalink note #556834.1

Regards

Stefan