I always used to find it a nuisance that applying the lower level Oracle patches was such a manual activity - you got a bunch of exe’s, dll’s etc and have to manually copy them into place. Typically you would create a script to do it, and wonder why Oracle hadn’t done so.

Recently patches though have been applicable with opatch - a perl script to do the donkey work.

However, admittedly mainly through my own ability to rtfm (or maybe to rt the whole fm, and all the surrounding fm), I missed these two crucial variables that you sometimes need to set.

set PERL5LIB=C:\Perl\lib

set ACTIVE_STATE_PERL=TRUE    -- must be upper case 'TRUE'

I didn’t need to do this in development - my guess is that it picked up another perl install, but in acceptance test I got the following:

d:\perl\bin\perl d:oracleora92opatchopatch.pl lsinventory


Oracle Interim Patch Installer version 1.0.0.0.53

Copyright (c) 2005 Oracle Corporation. All Rights Reserved..

We recommend you refer to the OPatch documentation under OPatch/docs for usage reference. We also recommend using

the latest OPatch version. For the latest OPatch version and other support related issues, please refer to document

293369.1 which is viewable from metalink.oracle.com


Oracle Home = d:oracleora92

Location of Oracle Universal Installer components = D:oracleora92oui

Location of OraInstaller.jar = "D:oracleora92ouijlib"

Oracle Universal Installer shared library =

D:\oracle\ora92\oui\lib\win32\oraInstaller.dll

Location of Oracle Inventory Pointer = N/A

Location of Oracle Inventory = D:\oracle\ora92\inventory

Path to Java = "D:\oracle\ora92\jre1.4.2\bin\java.exe"

Log file = d:/oracle/ora92/.patch_storage//*.log

…and then nothing, and no log files.