Regressing an Opatch version
Posted by John Hallas on September 18, 2009
According to Metalink the only supported way to regress to the version of Opatch that was installed is to re-install. However Opatch is a self-contained directory and the contents can be copied from another base installation.
Why would I want to regress the Opatch version. Let me explain with the commands I used.
Database version 10.2.0.4 (which gives opatch version 10.2.0.4.3)
I wanted to install the PSU patch which requires a leter version of opatch (10.2.0.4.7). What I should have done was copy the opatch folder and save ready for a restore. However I didn’t and when the PSU patch failed due to issues with previously applied patches I had trouble applying the April 2009 CPU patch.
I followed these steps to resolve the problem
Secure existing folder and remove contents
cd $ORACLE_HOME tar cvf OPatch.20090917_local.tar ./OPatch rm -R OPatch
Logon onto the remote server and tar the OPatch folder up and ftp to the local server. Note use a different name for the tar file so as not to overwrite the tar files that you have just created.
tar cvf OPatch.20090917_remote.tar ./OPatch
Back on the local server unzip the tar file and check the version of opatch
tar xvf OPatch.20090917_remote.tar a./OPatch/docs/FAQ 31 blocks a ./OPatch/docs/Users_Guide.txt 38 blocks a ./OPatch/docs/Prereq_Users_Guide.txt 25 blocks a ./OPatch/jlib/opatch.jar 1415 blocks a ./OPatch/jlib/opatchutil.jar 270 blocks a ./OPatch/jlib/opatchprereq.jar 242 blocks a ./OPatch/jlib/opatchactions.jar 142 blocks a ./OPatch/opatch 14 blocks a ./OPatch/opatch.pl 6 blocks a ./OPatch/opatch.ini 1 blocks a ./OPatch/emdpatch.pl 38 blocks a ./OPatch/opatchprereqs/oui/knowledgesrc.xml 2 blocks a ./OPatch/opatchprereqs/opatch/opatch_prereq.xml 60 blocks a ./OPatch/opatchprereqs/opatch/rulemap.xml 5 blocks a ./OPatch/opatchprereqs/opatch/runtime_prereq.xml 1 blocks a ./OPatch/opatchprereqs/prerequisite.properties 1 blocks opatch version Invoking OPatch 10.2.0.4.3 OPatch Version: 10.2.0.4.3