Martins Blog

Trying to explain complex things in simple terms

Applying PSU 11.2.0.1.1 to RDBMS home

Posted by Martin Bach on April 22, 2010

This is a quick post with some information about me deploying PSU 11.2.0.1.1 to my Oracle installation on ocfs2, RHEL 5.4 64bit. First of all it should be said that this is for the RDBMS, not Grid Infrastructure home. At the time of this writing I didn’t find any known issues, but you might want to check Note 1061294.1 Oracle Database Patch Set Update 11.2.0.1.1 Known Issues before proceeding. Also, never do this in production before having tested the patch in DEV, QA and all the other environments you might have.

I started by downloading the patch-if MOS is available, you can locate it on the patches and updates tab, simple search for oracle products. Enter 9352237 as the patch number, double-check your platform and download the zipfile. I extracted the file to /tmp/9352237.

As always, it’s a good idea to read the readme.html file. First thing to notice: OPatch 11.2 is recommended, patch 6880880. Opatch is avaialble for many versions, make sure to download the one for 11.2 and your platform. Deployment is quite simple-copy the patch file to $ORACLE_HOME and unzip it.

It will create a OPatch directory overwriting whatever OPAtch version was in it. When prompted, overwrite the old opatch:

[oracle@node1 ~]$ echo $ORACLE_HOME
/u02/app/oracle/product/11.2.0/dbhome_1
[oracle@node1 ~]$ cd $ORACLE_HOME
[oracle@node1 dbhome_1]$ mv /tmp/p6880880_112000_Linux-x86-64.zip .
[oracle@node1 dbhome_1]$ unzip -q p6880880_112000_Linux-x86-64.zip
replace OPatch/docs/FAQ? [y]es, [n]o, [A]ll, [N]one, [r]ename: A

To check if that worked I can-for example-list the inventory.

[oracle@node1 dbhome_1]$ cd OPatch/
[oracle@node1 OPatch]$ ./opatch lsinv
Invoking OPatch 11.2.0.1.2

Oracle Interim Patch Installer version 11.2.0.1.2
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

Oracle Home       : /u02/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.2
OUI version       : 11.2.0.1.0
OUI location      : /u02/app/oracle/product/11.2.0/dbhome_1/oui
Log file location : /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_11-21-35AM.log

The oracle home is on an ocfs2 shared cluster file system so no need to repeat this exercise on the other nodes.

Bug 8898852

Back to PSU 11.2 now. Another requirement is to download patch 8898852 for 11.2 Grid Infrastructure to prevent ASM corruption (yak!). The bug description is “Bug 8898852: DATAFILE CORRUPTION WHEN FILE CREATED WITH COMPATIBLE.ASM LESS THAN 11 RESIZED”, and reading about it it seems fairly evil. The patch is included in PSU 11.2.0.1.1 for Grid Infrastructure, but that’s not out yet. So let’s install the one off-which seems quite complicated at first. But isn’t – there is a lot of common information in the readme.

First we need to check the perl version in the Oracle home (huh?)

[oracle@node1 8898852]$ echo $ORACLE_HOME
/u01/crs/oracle/product/11.2.0/grid
[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/perl/bin/perl -v

This is perl, v5.10.0 built for x86_64-linux-thread-multi

Copyright 1987-2007, Larry Wall
...

[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch lsinv
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

So all set! Ready to apply the patch, but no!

[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch apply
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/crs/oracle/product/11.2.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.1.0.6.6
OUI version       : 11.2.0.1.0
OUI location      : /u01/crs/oracle/product/11.2.0/grid/oui
Log file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch2010-04-22_11-40-23AM.log

Patch history file: /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch '8898852' to OH '/u01/crs/oracle/product/11.2.0/grid'
ApplySession failed: ApplySession failed to prepare the system.
ApplySession was not able to create the patch_storage area:
/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47
System intact, OPatch will not attempt to restore the system

OPatch failed with error code 73

What’s this? MOS has the answer in “HOW TO INSTALL A PATCH ON CLUSTERWARE 11.2.0.1 INTO GRID INFRASTRUCTURE HOME [ID 1054439.1]”, referring to the Grid Infrastructure Installation Guide for Linux, chapter 5.4 “Modifying Oracle Clusterware Binaries After Installation”. Before applying patches to the Grid Infrastructure home we first have to unlock it. Here are the necessary steps, to be performed on each cluster node. It’s important to stress that this is for the grid home only! The reason my sid is “grid” and not +ASM1 is simple: I am not using ASM but a cluster file system to store all Clusterware and database files shared files. First we record the status of the services started from the node as oracle:

[oracle@node1 8898852]$ which srvctl
/u01/crs/oracle/product/11.2.0/grid/bin/srvctl
[oracle@node1 8898852]$ srvctl stop home -o $ORACLE_HOME -s /tmp/status -n node1

We need to change to root and run rootcrs.pl in $GRID_HOME/crs/install to unlock the installation:

[oracle@node1 8898852]$ su -
Password:
[root@node1 ~]# . oraenv
ORACLE_SID = [root] ? grid
The Oracle base for ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid is /u01/app/oracle
[root@node1 ~]# cd $ORACLE_HOME/crs/install

[root@node1 install]# /u01/crs/oracle/product/11.2.0/grid/perl/bin/perl rootcrs.pl -unlock \
  -crshome $ORACLE_HOME
2010-04-22 11:50:32: Parsing the host name
2010-04-22 11:50:32: Checking for super user privileges
2010-04-22 11:50:32: User has super user privileges
Using configuration parameter file: ./crsconfig_params
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'node1'
CRS-2673: Attempting to stop 'ora.crsd' on 'node1'
CRS-2677: Stop of 'ora.crsd' on 'node1' succeeded
CRS-2673: Attempting to stop 'ora.cssdmonitor' on 'node1'
CRS-2673: Attempting to stop 'ora.ctssd' on 'node1'
CRS-2673: Attempting to stop 'ora.evmd' on 'node1'
CRS-2673: Attempting to stop 'ora.mdnsd' on 'node1'
CRS-2677: Stop of 'ora.cssdmonitor' on 'node1' succeeded
CRS-2677: Stop of 'ora.evmd' on 'node1' succeeded
CRS-2677: Stop of 'ora.mdnsd' on 'node1' succeeded
CRS-2677: Stop of 'ora.ctssd' on 'node1' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'node1'
CRS-2677: Stop of 'ora.cssd' on 'node1' succeeded
CRS-2673: Attempting to stop 'ora.gpnpd' on 'node1'
CRS-2673: Attempting to stop 'ora.diskmon' on 'node1'
CRS-2677: Stop of 'ora.gpnpd' on 'node1' succeeded
CRS-2673: Attempting to stop 'ora.gipcd' on 'node1'
CRS-2677: Stop of 'ora.diskmon' on 'node1' succeeded
CRS-2677: Stop of 'ora.gipcd' on 'node1' succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'node1' has completed
CRS-4133: Oracle High Availability Services has been stopped.
Successfully unlock /u01/crs/oracle/product/11.2.0/grid

Additional steps might be needed for RDBMS portions of the patch, but this isn’t the case here. So I switched back to the oracle user and applied the patch:

[oracle@node1 8898852]$ . oraenv
ORACLE_SID = [orcl] ? grid
The Oracle base for ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid is /u01/app/oracle
[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch apply
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/crs/oracle/product/11.2.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.1.0.6.6
OUI version       : 11.2.0.1.0
OUI location      : /u01/crs/oracle/product/11.2.0/grid/oui
Log file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/
   opatch2010-04-22_11-52-40AM.log

Patch history file: /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch '8898852' to OH '/u01/crs/oracle/product/11.2.0/grid'

Running prerequisite checks...

OPatch detected the node list and the local node from the inventory.
OPatch will patch the local system then propagate the patch to the remote nodes.

This node is part of an Oracle Real Application Cluster.
Remote nodes: 'node2'
Local node: 'node1'
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/crs/oracle/product/11.2.0/grid')

Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files and inventory (not for auto-rollback) for the Oracle Home
Backing up files affected by the patch '8898852' for restore. This might take a while...
Backing up files affected by the patch '8898852' for rollback. This might take a while...

Patching component oracle.rdbms, 11.2.0.1.0...
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kfds.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kff.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kfio.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kfio0.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kfn.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kfnc.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/kfns.o"
Updating archive file "/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a"  with "lib/libserver11.a/ksfd.o"
Running make for target ioracle
ApplySession adding interim patch '8898852' to inventory

Verifying the update...
Inventory check OK: Patch ID 8898852 is registered in Oracle Home inventory with proper meta-data.
Files check OK: Files from Patch ID 8898852 are present in Oracle Home.

The local system has been patched.  You can restart Oracle instances on it.

Patching in rolling mode.

The node 'node2' will be patched next.

Please shutdown Oracle instances running out of this ORACLE_HOME on 'node2'.
(Oracle Home = '/u01/crs/oracle/product/11.2.0/grid')

Is the node ready for patching? [y|n]

Ahh not really… Quickly went through the preparation again for the second node. I’ll not list them here to avoid you getting bored…

y
User Responded with: Y
Updating nodes 'node2'
   Apply-related files are:
     FP = "/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_files.txt"
     DP = "/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_dirs.txt"
     MP = "/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/make_cmds.txt"
     RC = "/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/remote_cmds.txt"
...
Propagating files to remote nodes...
...
Propagating directories to remote nodes...
...
Running command on remote node 'node2':
cd /u01/crs/oracle/product/11.2.0/grid/rdbms/lib; /usr/bin/make -f ins_rdbms.mk ioracle \
  ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid || echo REMOTE_MAKE_FAILED::>&2 

The node 'node2' has been patched.  You can restart Oracle instances on it.

There were relinks on remote nodes.  Remember to check the binary size and timestamp on the nodes 'node2' .
The following make commands were invoked on remote nodes:
'cd /u01/crs/oracle/product/11.2.0/grid/rdbms/lib; /usr/bin/make -f ins_rdbms.mk ioracle \
  ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid'

OPatch succeeded.

Yes! Martin 1: Oracle 0. Now is the inventory ok as well?

Modifying Oracle Clusterware Binaries After Installation
[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch lsinv
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/crs/oracle/product/11.2.0/grid
Central Inventory : /u01/app/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.1.0.6.6
OUI version       : 11.2.0.1.0
OUI location      : /u01/crs/oracle/product/11.2.0/grid/oui
Log file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch2010-04-22_12-02-11PM.log

Patch history file: /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch_history.txt

Lsinventory Output file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/lsinv/lsinventory2010-04-22_12-02-11PM.txt

--------------------------------------------------------------------------------
Installed Top-level Products (1): 

Oracle Grid Infrastructure                                           11.2.0.1.0
There are 1 products installed in this Oracle Home.

Interim patches (1) :

Patch  8898852      : applied on Thu Apr 22 11:54:37 BST 2010
Unique Patch ID:  11998663
   Created on 3 Dec 2009, 01:58:47 hrs PST8PDT
   Bugs fixed:
     8898852

Rac system comprising of multiple nodes
  Local node = node1
  Remote node = node2
--------------------------------------------------------------------------------
OPatch succeeded.

It is. To finish the patch application, I have to lock the $GRID_HOME again (and again, on both nodes. Output for node 2 omitted for clarity).

[root@node1 install]# /u01/crs/oracle/product/11.2.0/grid/perl/bin/perl rootcrs.pl -patch
2010-04-22 12:03:33: Parsing the host name
2010-04-22 12:03:33: Checking for super user privileges
2010-04-22 12:03:33: User has super user privileges
Using configuration parameter file: ./crsconfig_params
CRS-4123: Oracle High Availability Services has been started.

Back to the oracle user to restart whatever was running:

[oracle@node1 8898852]$ which srvctl
/u01/crs/oracle/product/11.2.0/grid/bin/srvctl
[oracle@node1 8898852]$ srvctl start home -o $ORACLE_HOME -s /tmp/status -n node1

Now that’s one less patch to worry about! Back to the PSU-again. I don’t have any one off patches on the RDBMS installation, and I’m not expecting any conflicts. Let’s test anyway:

[oracle@node1 8898852]$ . oraenv
ORACLE_SID = [grid] ? orcl
The Oracle base for ORACLE_HOME=/u02/app/oracle/product/11.2.0/dbhome_1 is /u01/app/oracle
[oracle@node1 8898852]$ cd ..
[oracle@node1 tmp]$ /u02/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch prereq \
  CheckConflictAgainstOHWithDetail -phBaseDir ./9352237
Invoking OPatch 11.2.0.1.2

Oracle Interim Patch Installer version 11.2.0.1.2
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u02/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.2
OUI version       : 11.2.0.1.0
OUI location      : /u02/app/oracle/product/11.2.0/dbhome_1/oui
Log file location : /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_12-10-11PM.log

Patch history file: /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch_history.txt

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

Installation of the PSU is really simple in my test case since I don’t have a data guard configuration in place. You should definitely read the readme to apply the patch in every dependent standby database. I’m also saving me some effort by using a shared oracle home. I wouldn’t recommend this for production, you can’t apply rolling patches in such a configuration. Anyway, here we go. By the way I chose to remain uninformed about metalink patches.

[oracle@node1 9352237]$ $ORACLE_HOME/OPatch/opatch apply
Invoking OPatch 11.2.0.1.2

Oracle Interim Patch Installer version 11.2.0.1.2
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

Oracle Home       : /u02/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
   from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.2
OUI version       : 11.2.0.1.0
OUI location      : /u02/app/oracle/product/11.2.0/dbhome_1/oui
Log file location : /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_12-13-17PM.log

Patch history file: /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch '9352237' to OH '/u02/app/oracle/product/11.2.0/dbhome_1'

Running prerequisite checks...
Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name: 

You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  y

OPatch will patch the local system only because this is a shared Oracle Home.

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u02/app/oracle/product/11.2.0/dbhome_1')

Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files and inventory (not for auto-rollback) for the Oracle Home
Backing up files affected by the patch '9352237' for restore. This might take a while...
Backing up files affected by the patch '9352237' for rollback. This might take a while...
Execution of 'sh /tmp/9352237/custom/scripts/pre -apply 9352237 ':

Return Code = 0

Patching component oracle.rdbms.rsf, 11.2.0.1.0...
Updating archive file "/u02/app/oracle/product/11.2.0/dbhome_1/lib/libpls11.a"  with "lib/libpls11.a/phd.o"
...
Updating archive file "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/libdbtools11.a"  with "rdbms/lib/libdbtools11.a/krmq.o"

Patching component oracle.rdbms.dbscripts, 11.2.0.1.0...
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/prvtamgt.plb"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/utlu112i.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/utlu112x.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/catexp.sql"

Patching component oracle.rdbms, 11.2.0.1.0...
Updating archive file "/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a"  with "lib/libserver11.a/kcc.o"
...
Updating archive file "/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.a"  with "lib/libasmclnt11.a/kgfo.o"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ktd.o"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/jox.o"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/kfod.o"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/mkpatch.o"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/xml/xsl/kulob.xsl"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/xml/xsl/kustorag.xsl"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/cpu/scripts/bug9371993.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/cpu/scripts/bug9016295.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/psu/scripts/bug8820324.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/psu/11.2.0.1.1/catpsu.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/psu/11.2.0.1.1/catpsu_rollback.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/bundledata_PSU.xml"

Patching component oracle.oraolap, 11.2.0.1.0...
Updating archive file "/u02/app/oracle/product/11.2.0/dbhome_1/lib/liboraolap11.a"  with "lib/liboraolap11.a/xscarrot.o"

Patching component oracle.rdbms.deconfig, 11.2.0.1.0...
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.so"

Patching component oracle.javavm.server, 11.2.0.1.0...
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/javavm/install/jvm_exp.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/javavm/install/initjvm.sql"
Copying file to "/u02/app/oracle/product/11.2.0/dbhome_1/javavm/install/jvmursc.sql"
Running make for target client_sharedlib
Running make for target irman
Running make for target ikfod
Running make for target irenamedg
Running make for target idgmgrl
Running make for target imkpatch
Running make for target client_sharedlib
Running make for target ioracle
ApplySession adding interim patch '9352237' to inventory

Verifying the update...
Inventory check OK: Patch ID 9352237 is registered in Oracle Home inventory with proper meta-data.
Files check OK: Files from Patch ID 9352237 are present in Oracle Home.

--------------------------------------------------------------------------------
********************************************************************************
********************************************************************************
**                                ATTENTION                                   **
**                                                                            **
** Please note that the Patch Set Update Installation (PSU Deinstallation)    **
** is not complete until all the Post Installation (Post Deinstallation)      **
** instructions noted in the Readme accompanying this PSU, have been          **
** successfully completed.                                                    **
**                                                                            **
********************************************************************************
********************************************************************************

--------------------------------------------------------------------------------

Execution of 'sh /tmp/9352237/custom/scripts/post -apply 9352237 ':

Return Code = 0

The local system has been patched and can be restarted.

OPatch succeeded.
[oracle@node1 9352237]$

Great.  Now it’s time to perform the post patch steps:

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle.sql psu apply

They only took a very short time to execute. I checked the generated logs but no errors. A final verification against opatch:

[oracle@node1 admin]$ /u02/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch lsinv
Invoking OPatch 11.2.0.1.2

Interim patches (1) :

Patch  9352237      : applied on Thu Apr 22 13:11:31 BST 2010
Unique Patch ID:  12250325
   Created on 25 Mar 2010, 00:05:17 hrs PST8PDT
   Bugs fixed:
     8661168, 8769239, 8898852, 8801119, 9054253, 8706590, 8725286, 8974548
     8778277, 8780372, 8769569, 9027691, 9454036, 9454037, 9454038, 8761974
     7705591, 8496830, 8702892, 8639114, 8723477, 8729793, 8919682, 8818983
     9001453, 8475069, 9328668, 8891929, 8798317, 8820324, 8733749, 8702535
     8565708, 9036013, 8735201, 8684517, 8870559, 8773383, 8933870, 8812705
     8405205, 8822365, 8813366, 8761260, 8790767, 8795418, 8913269, 8897784
     8760714, 8717461, 8671349, 8775569, 8898589, 8861700, 8607693, 8642202
     8780281, 9369797, 8780711, 8784929, 8834636, 9015983, 8891037, 8828328
     8570322, 8832205, 8665189, 8717031, 8685253, 8718952, 8799099, 8633358
     9032717, 9321701, 8588519, 8783738, 8796511, 8782971, 8756598, 9454385
     8856497, 8703064, 9066116, 9007102, 8721315, 8818175, 8674263, 9352237
     8753903, 8720447, 9057443, 8790561, 8733225, 9197917, 8928276, 8991997, 8837736

Job done!

Applying Patch 9352237 – 11.2.0.1.1 Patch Set UpdateThis is a quick post with some information about me deploying PSU 11.2.0.1.1 to my Oracle installation on ocfs2, RHEL 5.4 64bit. First of all it should be said that this is for the RDBMS, not Grid Infrastructure home. At the time of this writing I didn’t find any known issues, but you might want to check Note 1061294.1 Oracle Database Patch Set Update 11.2.0.1.1 Known Issues before proceeding. Also, never do this in production before having tested the patch in DEV, QA and all the other environments you might have.

I started by downloading the patch-if MOS is available, you can locate it on the patches and updates tab, simple search for oracle products. Enter 9352237 as the patch number, double-check your platform and download the zipfile. I extracted the file to /tmp/9352237.

As always, it’s a good idea to read the readme.html file. First thing to notice: OPatch 11.2 is recommended, patch 6880880. Opatch is avaialble for many versions, make sure to download the one for 11.2 and your platform. Deployment is quite simple-copy the patch file to $ORACLE_HOME and unzip it. It will create a OPatch directory overwriting whatever OPAtch version was in it. When prompted, overwrite the old opatch:

[oracle@node1 ~]$ echo $ORACLE_HOME
/u02/app/oracle/product/11.2.0/dbhome_1
[oracle@node1 ~]$ cd $ORACLE_HOME
[oracle@node1 dbhome_1]$ mv /tmp/p6880880_112000_Linux-x86-64.zip .
[oracle@node1 dbhome_1]$ unzip -q p6880880_112000_Linux-x86-64.zip
replace OPatch/docs/FAQ? [y]es, [n]o, [A]ll, [N]one, [r]ename: A

To check if that worked, I can-for example-list the inventory.

[oracle@node1 dbhome_1]$ cd OPatch/
[oracle@node1 OPatch]$ ./opatch lsinv
Invoking OPatch 11.2.0.1.2

Oracle Interim Patch Installer version 11.2.0.1.2
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

Oracle Home       : /u02/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.2
OUI version       : 11.2.0.1.0
OUI location      : /u02/app/oracle/product/11.2.0/dbhome_1/oui
Log file location : /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_11-21-35AM.log

The oracle home is on an ocfs2 shared cluster file system so no need to repeat this exercise on the other nodes.

Back to PSU 11.2 now. Another requirement is to download patch 8898852 for 11.2 Grid Infrastructure to prevent ASM corruption (yak!). The bug description is “Bug 8898852: DATAFILE CORRUPTION WHEN FILE CREATED WITH COMPATIBLE.ASM LESS THAN 11 RESIZED”, and reading about it it seems fairly evil. The patch is included in PSU 11.2.0.1.1 for Grid Infrastructure, but that’s not out yet. So let’s install the one off-which seems quite complicated at first. But isn’t – there is a lot of common information in the readme.
First we need to check the perl version in the Oracle home (huh?)

[oracle@node1 8898852]$ echo $ORACLE_HOME
/u01/crs/oracle/product/11.2.0/grid
[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/perl/bin/perl -v

This is perl, v5.10.0 built for x86_64-linux-thread-multi

Copyright 1987-2007, Larry Wall

[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch lsinv
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

So all set! Ready to apply the patch, but no!

[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch apply
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/crs/oracle/product/11.2.0/grid
Central Inventory : /u01/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.1.0.6.6
OUI version       : 11.2.0.1.0
OUI location      : /u01/crs/oracle/product/11.2.0/grid/oui
Log file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch2010-04-22_11-40-23AM.log

Patch history file: /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch ‘8898852’ to OH ‘/u01/crs/oracle/product/11.2.0/grid’
ApplySession failed: ApplySession failed to prepare the system. ApplySession was not able to create the patch_storage area: /u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47
System intact, OPatch will not attempt to restore the system

OPatch failed with error code 73

What’s this? MOS has the answer in “HOW TO INSTALL A PATCH ON CLUSTERWARE 11.2.0.1 INTO GRID INFRASTRUCTURE HOME [ID 1054439.1]”, referring to the Grid Infrastructure Installation Guide for Linux, chapter 5.4 “Modifying Oracle Clusterware Binaries After Installation”. Before applying patches to the Grid Infrastructure home we first have to unlock it. Here are the necessary steps, to be performed on each cluster node:

[oracle@node1 8898852]$ which srvctl
/u01/crs/oracle/product/11.2.0/grid/bin/srvctl
[oracle@node1 8898852]$ srvctl stop home -o $ORACLE_HOME -s /tmp/status -n node1

Change to root and run rootcrs.pl in $GRID_HOME/crs/install:
[oracle@node1 8898852]$ su –
Password:
[root@node1 ~]# . oraenv
ORACLE_SID = [root] ? grid
The Oracle base for ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid is /u01/app/oracle
[root@node1 ~]# cd $ORACLE_HOME/crs/install

[root@node1 install]# /u01/crs/oracle/product/11.2.0/grid/perl/bin/perl rootcrs.pl -unlock -crshome $ORACLE_HOME
2010-04-22 11:50:32: Parsing the host name
2010-04-22 11:50:32: Checking for super user privileges
2010-04-22 11:50:32: User has super user privileges
Using configuration parameter file: ./crsconfig_params
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘node1’
CRS-2673: Attempting to stop ‘ora.crsd’ on ‘node1’
CRS-2677: Stop of ‘ora.crsd’ on ‘node1’ succeeded
CRS-2673: Attempting to stop ‘ora.cssdmonitor’ on ‘node1’
CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘node1’
CRS-2673: Attempting to stop ‘ora.evmd’ on ‘node1’
CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘node1’
CRS-2677: Stop of ‘ora.cssdmonitor’ on ‘node1’ succeeded
CRS-2677: Stop of ‘ora.evmd’ on ‘node1’ succeeded
CRS-2677: Stop of ‘ora.mdnsd’ on ‘node1’ succeeded
CRS-2677: Stop of ‘ora.ctssd’ on ‘node1’ succeeded
CRS-2673: Attempting to stop ‘ora.cssd’ on ‘node1’
CRS-2677: Stop of ‘ora.cssd’ on ‘node1’ succeeded
CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘node1’
CRS-2673: Attempting to stop ‘ora.diskmon’ on ‘node1’
CRS-2677: Stop of ‘ora.gpnpd’ on ‘node1’ succeeded
CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘node1’
CRS-2677: Stop of ‘ora.diskmon’ on ‘node1’ succeeded
CRS-2677: Stop of ‘ora.gipcd’ on ‘node1’ succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘node1’ has completed
CRS-4133: Oracle High Availability Services has been stopped.
Successfully unlock /u01/crs/oracle/product/11.2.0/grid

Additional stps might be needed for RDBMS portions of the patch, but this isn’t the case here. So I switched back to the oracle user and applied the patch:

[oracle@node1 8898852]$ . oraenv
ORACLE_SID = [orcl] ? grid
The Oracle base for ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid is /u01/app/oracle
[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch apply
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/crs/oracle/product/11.2.0/grid
Central Inventory : /u01/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.1.0.6.6
OUI version       : 11.2.0.1.0
OUI location      : /u01/crs/oracle/product/11.2.0/grid/oui
Log file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch2010-04-22_11-52-40AM.log

Patch history file: /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch ‘8898852’ to OH ‘/u01/crs/oracle/product/11.2.0/grid’

Running prerequisite checks…

OPatch detected the node list and the local node from the inventory.  OPatch will patch the local system then propagate the patch to the remote nodes.

This node is part of an Oracle Real Application Cluster.
Remote nodes: ‘node2’
Local node: ‘node1’
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = ‘/u01/crs/oracle/product/11.2.0/grid’)

Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files and inventory (not for auto-rollback) for the Oracle Home
Backing up files affected by the patch ‘8898852’ for restore. This might take a while…
Backing up files affected by the patch ‘8898852’ for rollback. This might take a while…

Patching component oracle.rdbms, 11.2.0.1.0…
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kfds.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kff.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kfio.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kfio0.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kfn.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kfnc.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/kfns.o”
Updating archive file “/u01/crs/oracle/product/11.2.0/grid/lib/libserver11.a”  with “lib/libserver11.a/ksfd.o”
Running make for target ioracle
ApplySession adding interim patch ‘8898852’ to inventory

Verifying the update…
Inventory check OK: Patch ID 8898852 is registered in Oracle Home inventory with proper meta-data.
Files check OK: Files from Patch ID 8898852 are present in Oracle Home.

The local system has been patched.  You can restart Oracle instances on it.

Patching in rolling mode.

The node ‘node2’ will be patched next.

Please shutdown Oracle instances running out of this ORACLE_HOME on ‘node2’.
(Oracle Home = ‘/u01/crs/oracle/product/11.2.0/grid’)

Is the node ready for patching? [y|n]

Ahh not really… Quickly went through the preparation again for the second node. I’ll not list them here to avoid you getting bored…

y
User Responded with: Y
Updating nodes ‘node2’
Apply-related files are:
FP = “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_files.txt”
DP = “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_dirs.txt”
MP = “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/make_cmds.txt”
RC = “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/remote_cmds.txt”

Instantiating the file “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_files.txt.instantiated” by replacing $ORACLE_HOME in “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_files.txt” with actual path.
Propagating files to remote nodes…
Instantiating the file “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_dirs.txt.instantiated” by replacing $ORACLE_HOME in “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/copy_dirs.txt” with actual path.
Propagating directories to remote nodes…
Instantiating the file “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/make_cmds.txt.instantiated” by replacing $ORACLE_HOME in “/u01/crs/oracle/product/11.2.0/grid/.patch_storage/8898852_Dec_3_2009_01_58_47/rac/make_cmds.txt” with actual path.
Running command on remote node ‘node2’:
cd /u01/crs/oracle/product/11.2.0/grid/rdbms/lib; /usr/bin/make -f ins_rdbms.mk ioracle ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid || echo REMOTE_MAKE_FAILED::>&2

The node ‘node2’ has been patched.  You can restart Oracle instances on it.

There were relinks on remote nodes.  Remember to check the binary size and timestamp on the nodes ‘node2’ .
The following make commands were invoked on remote nodes:
‘cd /u01/crs/oracle/product/11.2.0/grid/rdbms/lib; /usr/bin/make -f ins_rdbms.mk ioracle ORACLE_HOME=/u01/crs/oracle/product/11.2.0/grid

OPatch succeeded.

Now is the inventory ok as well?

Modifying Oracle Clusterware Binaries After Installation
[oracle@node1 8898852]$ /u01/crs/oracle/product/11.2.0/grid/OPatch/opatch lsinv
Invoking OPatch 11.1.0.6.6

Oracle Interim Patch Installer version 11.1.0.6.6
Copyright (c) 2009, Oracle Corporation.  All rights reserved.

Oracle Home       : /u01/crs/oracle/product/11.2.0/grid
Central Inventory : /u01/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.1.0.6.6
OUI version       : 11.2.0.1.0
OUI location      : /u01/crs/oracle/product/11.2.0/grid/oui
Log file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch2010-04-22_12-02-11PM.log

Patch history file: /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/opatch_history.txt

Lsinventory Output file location : /u01/crs/oracle/product/11.2.0/grid/cfgtoollogs/opatch/lsinv/lsinventory2010-04-22_12-02-11PM.txt

——————————————————————————–
Installed Top-level Products (1):

Oracle Grid Infrastructure                                           11.2.0.1.0
There are 1 products installed in this Oracle Home.

Interim patches (1) :

Patch  8898852      : applied on Thu Apr 22 11:54:37 BST 2010
Unique Patch ID:  11998663
Created on 3 Dec 2009, 01:58:47 hrs PST8PDT
Bugs fixed:
8898852

Rac system comprising of multiple nodes
Local node = node1
Remote node = node2

——————————————————————————–

OPatch succeeded.

It is. To finish the patch application, I have to lock the $GRID_HOME again (and again, on both nodes. Output for node 2 omitted for clarity).

[root@node1 install]# /u01/crs/oracle/product/11.2.0/grid/perl/bin/perl rootcrs.pl -patch
2010-04-22 12:03:33: Parsing the host name
2010-04-22 12:03:33: Checking for super user privileges
2010-04-22 12:03:33: User has super user privileges
Using configuration parameter file: ./crsconfig_params
CRS-4123: Oracle High Availability Services has been started.

Back to the oracle user:

[oracle@node1 8898852]$ which srvctl
/u01/crs/oracle/product/11.2.0/grid/bin/srvctl
[oracle@node1 8898852]$ srvctl start home -o $ORACLE_HOME -s /tmp/status -n node1

Now that’s one less patch to worry about!

Back to the PSU-again. I don’t have any one off patches on the RDBMS installation, and I’m not expecting any conflicts. Let’s test anyway:

[oracle@node1 8898852]$ . oraenv
ORACLE_SID = [grid] ? orcl
The Oracle base for ORACLE_HOME=/u02/app/oracle/product/11.2.0/dbhome_1 is /u01/app/oracle
[oracle@node1 8898852]$ cd ..
[oracle@node1 tmp]$ /u02/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./9352237
Invoking OPatch 11.2.0.1.2

Oracle Interim Patch Installer version 11.2.0.1.2
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u02/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.2
OUI version       : 11.2.0.1.0
OUI location      : /u02/app/oracle/product/11.2.0/dbhome_1/oui
Log file location : /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_12-10-11PM.log

Patch history file: /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch_history.txt

Invoking prereq “checkconflictagainstohwithdetail”

Prereq “checkConflictAgainstOHWithDetail” passed.

OPatch succeeded.

Installation of the PSU is really simple in my test case since I don’t have a data guard configuration in place. You should definitely read the readme to apply the patch in every dependent standby database. I’m also saving me some effort by using a shared oracle home. I wouldn’t recommend this for production, you can’t apply rolling patches in such a configuration. Anyway, here we go. By the way I chose to remain uninformed about metalink patches.

/u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_12-13-17PM.log
/u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch_history.txt

[oracle@node1 9352237]$ $ORACLE_HOME/OPatch/opatch apply
Invoking OPatch 11.2.0.1.2

Oracle Interim Patch Installer version 11.2.0.1.2
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

Oracle Home       : /u02/app/oracle/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from           : /etc/oraInst.loc
OPatch version    : 11.2.0.1.2
OUI version       : 11.2.0.1.0
OUI location      : /u02/app/oracle/product/11.2.0/dbhome_1/oui
Log file location : /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2010-04-22_12-13-17PM.log

Patch history file: /u02/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch_history.txt

ApplySession applying interim patch ‘9352237’ to OH ‘/u02/app/oracle/product/11.2.0/dbhome_1’

Running prerequisite checks…
Provide your email address to be informed of security issues, install and
initiate Oracle Configuration Manager. Easier for you if you use your My
Oracle Support Email address/User Name.
Visit http://www.oracle.com/support/policies.html for details.
Email address/User Name:

You have not provided an email address for notification of security issues.
Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  y

OPatch will patch the local system only because this is a shared Oracle Home.

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = ‘/u02/app/oracle/product/11.2.0/dbhome_1’)

Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files and inventory (not for auto-rollback) for the Oracle Home
Backing up files affected by the patch ‘9352237’ for restore. This might take a while…
Backing up files affected by the patch ‘9352237’ for rollback. This might take a while…
Execution of ‘sh /tmp/9352237/custom/scripts/pre -apply 9352237 ‘:

Return Code = 0

Patching component oracle.rdbms.rsf, 11.2.0.1.0…
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libpls11.a”  with “lib/libpls11.a/phd.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libpls11.a”  with “lib/libpls11.a/ph2drv.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libpls11.a”  with “lib/libpls11.a/ph2oa.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libgeneric11.a”  with “lib/libgeneric11.a/kot.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libgeneric11.a”  with “lib/libgeneric11.a/kgh.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libgeneric11.a”  with “lib/libgeneric11.a/kgl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libgeneric11.a”  with “lib/libgeneric11.a/kgl2.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libgeneric11.a”  with “lib/libgeneric11.a/kgl4.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libgeneric11.a”  with “lib/libgeneric11.a/qct.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libcommon11.a”  with “lib/libcommon11.a/kdzt.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libcommon11.a”  with “lib/libcommon11.a/sagedata.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libcommon11.a”  with “lib/libcommon11.a/kdzilcs.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libcommon11.a”  with “lib/libcommon11.a/kdzc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/libdbtools11.a”  with “rdbms/lib/libdbtools11.a/krmq.o”

Patching component oracle.rdbms.dbscripts, 11.2.0.1.0…
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/prvtamgt.plb”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/utlu112i.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/utlu112x.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/catexp.sql”

Patching component oracle.rdbms, 11.2.0.1.0…
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdt.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kspt.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kxtt.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktcnq.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktu.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktur.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjbr.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/k2g.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/rfafo.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/rfcfg.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/rfmboot.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/rfmedd.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/rfmrole.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/rfsicd.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdo.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktcn.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktg.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktfa.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktud.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/aud.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kzam.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kxs.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kks.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kks1.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kksc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfd.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfda.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfdp.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfds.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kff.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfio.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfio0.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfn.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfnb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfnc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfns.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kfnm.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ksfd.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kkopq.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kxfp.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kxfr.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kxfxq.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjbl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ksucln.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ksk.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ksu.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdlw.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdst00.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdst01.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdst11.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdstrr.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcfis.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbz.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktsla.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktslm.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/koks3.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdu.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kqf.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kwqa.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kwqm.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kko.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjxgf.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjxgg.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjxgm.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjxgr.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/qesrc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/qkna.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/qksrc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kkqtutl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kkqs.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/knlb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbk.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kzu.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktt.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kjbm.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/qksvc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ksmg.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdbl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdzh.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdblc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdst.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktein.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbs.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbz.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktsp.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdblc.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdo.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktsf.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/atb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kwqid.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdlrci.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdlxdup.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kmgs.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kmgsb.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kzvdve.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/qks3t.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kcbi.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdli.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/skptch.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/ktslj.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libserver11.a”  with “lib/libserver11.a/kdza.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/libknlopt.a”  with “rdbms/lib/libknlopt.a/ktd.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/libknlopt.a”  with “rdbms/lib/libknlopt.a/jox.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.a”  with “lib/libasmclnt11.a/kgf.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.a”  with “lib/libasmclnt11.a/kgfdp.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.a”  with “lib/libasmclnt11.a/kgfdputl.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.a”  with “lib/libasmclnt11.a/kgfn.o”
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.a”  with “lib/libasmclnt11.a/kgfo.o”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ktd.o”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/jox.o”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/kfod.o”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/mkpatch.o”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/ins_rdbms.mk”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/lib/env_rdbms.mk”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/xml/xsl/kulob.xsl”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/xml/xsl/kustorag.xsl”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/cpu/scripts/bug9371993.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/cpu/scripts/bug9016295.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/psu/scripts/bug8820324.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/psu/11.2.0.1.1/catpsu.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/psu/11.2.0.1.1/catpsu_rollback.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/bundledata_PSU.xml”

Patching component oracle.oraolap, 11.2.0.1.0…
Updating archive file “/u02/app/oracle/product/11.2.0/dbhome_1/lib/liboraolap11.a”  with “lib/liboraolap11.a/xscarrot.o”

Patching component oracle.rdbms.deconfig, 11.2.0.1.0…
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/lib/libasmclnt11.so”

Patching component oracle.javavm.server, 11.2.0.1.0…
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/javavm/install/jvm_exp.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/javavm/install/initjvm.sql”
Copying file to “/u02/app/oracle/product/11.2.0/dbhome_1/javavm/install/jvmursc.sql”
Running make for target client_sharedlib
Running make for target irman
Running make for target ikfod
Running make for target irenamedg
Running make for target idgmgrl
Running make for target imkpatch
Running make for target client_sharedlib
Running make for target ioracle
ApplySession adding interim patch ‘9352237’ to inventory

Verifying the update…
Inventory check OK: Patch ID 9352237 is registered in Oracle Home inventory with proper meta-data.
Files check OK: Files from Patch ID 9352237 are present in Oracle Home.

——————————————————————————–
********************************************************************************
********************************************************************************
**                                ATTENTION                                   **
**                                                                            **
** Please note that the Patch Set Update Installation (PSU Deinstallation)    **
** is not complete until all the Post Installation (Post Deinstallation)      **
** instructions noted in the Readme accompanying this PSU, have been          **
** successfully completed.                                                    **
**                                                                            **
********************************************************************************
********************************************************************************

——————————————————————————–

Execution of ‘sh /tmp/9352237/custom/scripts/post -apply 9352237 ‘:

Return Code = 0

The local system has been patched and can be restarted.

OPatch succeeded.
[oracle@node1 9352237]$

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle.sql psu apply

Now it’s about time to perform the post PSU steps:

Updating registry…
SQL> INSERT INTO registry$history
2    (action_time, action,
3     namespace, version, id,
4     bundle_series, comments)
5  VALUES
6    (SYSTIMESTAMP, ‘APPLY’,
7     SYS_CONTEXT(‘REGISTRY$CTX’,’NAMESPACE’),
8     ‘11.2.0.1’,
9     1,
10     ‘PSU’,
11     ‘PSU 11.2.0.1.1’);

[oracle@node1 admin]$ /u02/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch lsinv
Invoking OPatch 11.2.0.1.2

Interim patches (1) :

Patch  9352237      : applied on Thu Apr 22 13:11:31 BST 2010
Unique Patch ID:  12250325
Created on 25 Mar 2010, 00:05:17 hrs PST8PDT
Bugs fixed:
8661168, 8769239, 8898852, 8801119, 9054253, 8706590, 8725286, 8974548
8778277, 8780372, 8769569, 9027691, 9454036, 9454037, 9454038, 8761974
7705591, 8496830, 8702892, 8639114, 8723477, 8729793, 8919682, 8818983
9001453, 8475069, 9328668, 8891929, 8798317, 8820324, 8733749, 8702535
8565708, 9036013, 8735201, 8684517, 8870559, 8773383, 8933870, 8812705
8405205, 8822365, 8813366, 8761260, 8790767, 8795418, 8913269, 8897784
8760714, 8717461, 8671349, 8775569, 8898589, 8861700, 8607693, 8642202
8780281, 9369797, 8780711, 8784929, 8834636, 9015983, 8891037, 8828328
8570322, 8832205, 8665189, 8717031, 8685253, 8718952, 8799099, 8633358
9032717, 9321701, 8588519, 8783738, 8796511, 8782971, 8756598, 9454385
8856497, 8703064, 9066116, 9007102, 8721315, 8818175, 8674263, 9352237
8753903, 8720447, 9057443, 8790561, 8733225, 9197917, 8928276, 8991997, 8837736

Job done!

12 Responses to “Applying PSU 11.2.0.1.1 to RDBMS home”

  1. jarneil said

    Hi Martin,

    Good blog post!

    I took a rather less sophisticated approach to this error, seems to work if you make the Grid Infrastructure owned by the oracle user rather than the default root.

    There is nothing like RTFM though!

    cheers,

    jason.

  2. Steve said

    Oracle is now saying to apply 9343627 in place of 8898852.

  3. Steve said

    You can also run ‘opatch version’ to check its version.

  4. Steve said

    Another thing that I discovered and didn’t know until prior to installing this patch is the the opatch version that came with 11gR2 is 11.1!

  5. Steve said

    Ah, see. If you look at the opatch version where you install 8898852, you will see that the version of opatch in the grid home is indeed 11.1.0.6.6.

    When we update opatch from now on, we have to update it in both the database home as well as the grid home!

    • Martin said

      Well there is no requirement to update opatch to 11.2 for the one-off patch. Opatch 11.2 was required for the RDBMS PSU only. And I am impatient :)

  6. Steve said

    It also doesn’t appear that 8898852 was done in a truly rolling fashion, as I only see the start of node 1 at the very end. In between you say that you won’t post the instructions of the second node. Did you not have to take down the second node using the ‘srvctl stop home’ command prior to allowing the patch to continue?

    • Martin said

      Yes, I took it down, exactly the same instructions. Since I have a shared RDBMS home I had to take the database down anyway. A shared Oracle home mitigates the benefit of rolling updates.

  7. Steve said

    According to 1054439.1, it appears as though they don’t want you do to a multinode update, as the opatch command that they use is napply which would only patch a local node. Step 9 has one going to another node in the RAC and going through all steps again. This would be a true rolling patch.

  8. Steve said

    I’m also wondering what your $ORACLE_HOME was set to when you first did the srvctl stop command and supplied $ORACLE_HOME to it? I’m hypothesizing that it’s set to the grid home, as I see you did a ‘which srvctl’ command just prior. According to Oracle’s document, this is supposed to be set to the database home when issuing the ‘srvctl’ command.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: