Archive

Archive for the ‘OPatch’ Category

Oracle – Opatch

October 20, 2010 Leave a comment

Opatch is an Oracle utility for the application and rolling back of interim patches to the Oracle RDBMS.  In order to use opatch it is recommended to set its location in $PATH.

Location

OPatch can be found under $ORACLE_HOME/OPatch

Current Patch History

To find the current patch history run the following:

$ opatch lsinventory [ -all ] [ -i[nvPtrLoc] <Path to oraInst.loc> ][ -oh <ORACLE_HOME>]
-all

– list all patches currently applied.

OPatch Version

$ sh opatch version
Invoking OPatch 10.2.0.4.2
OPatch Version: 10.2.0.4.2
OPatch succeeded.

OPatch Apply

$ opatch apply [-f[orce]] [-i[nvPtrLoc]<path to oraInst.log] [-m[inimize_downtime]] [-n[o_inventory]] [-oh<ORACLE_HOME>] [<patch_location>]
-force

– used to remove any conflicting patches and force the patch to be applied

-invPtrLoc

– used to locate the oraInst.loc file

-minimize_downtime

– used only in RAC instances, allowing for the remaining instances to remain up during patching. It is the responsibility of the user to shutdown each instance before applying the patches, after the last instance is patched then all instances can be brought back up.

-no_inventory

– This only works if the inventory is unavailable and allows for bypassing the inventory for reading and updates.

-oh

– Directory to be used instead of the default $ORACLE_HOME

patch_location

– Where to install the patch from

OPatch Rollback

Sometimes it is necessary to rollback a patch once it has been applied.

$ opatch rollback -id patch_id [-i[nvPtrLoc]<Path to oraInst.loc>] [-oh <ORACLE_HOME>] -pj patch_dir
-id

– The id of the patch that requires rollback

-ph

– The directory that is a valid patch area.