Patching Oracle 12c Multi-tenant to latest PSU now known as DPBP

Before we begin this is a note from the Oracle Website

The name of these bundle patches was changed to “Database Proactive Bundle Patch” in April 2016.

The patches include fixes for both Engineered Systems and for DB In-Memory.
They can be used on both Exadata and non-Exadata systems, and can be used for both RAC and non-RAC configurations.

Quarterly patches are released on all platforms.
Monthly patches may only be released on a subset of platforms.

DB Version : 12.1.0.2

OS : OEL 6 Update 6, Linux x86_64

Single Instance No RAC

Multitenant Option Enabled

1 CDB, 1 PDB

CDB Name: CDBDEV

PDB Name: PDBDEV

The database bundled patches are now called “Database Proactive Bundle Patch” from April 2016.

Patch 22291127 – Database Patch Set Update 12.1.0.2.160419 (Includes CPUApr2016) – Single Instance DB

Patch 22899531: DATABASE PROACTIVE BUNDLE PATCH 12.1.0.2.160419 (APR2016)- DB Plus Grid Infrastructure

Also the naming convention has changed like below

Patch description:  “Database Patch Set Update : 12.1.0.2.160419 (22291127)”

   Created on 6 Apr 2016, 03:46:21 hrs PST8PDT

Sub-patch  21948354; “Database Patch Set Update : 12.1.0.2.160119 (21948354)”

Sub-patch  21359755; “Database Patch Set Update : 12.1.0.2.5 (21359755)”

Sub-patch  20831110; “Database Patch Set Update : 12.1.0.2.4 (20831110)”

Sub-patch  20299023; “Database Patch Set Update : 12.1.0.2.3 (20299023)”

Sub-patch  19769480; “Database Patch Set Update : 12.1.0.2.2 (19769480)”

The left most part denotes “yymmdd” as a post-fix to now which date is the PSU from

  1. Download the latest patches for your platform from Oracle Support Website.
  2. unzip the patch

unzip p22291127_12102_<platform>.zip

cd 22291127

Go to Directory of Patch and Apply the Patch

[oracle@localhost 22291127]$ /home/oracle/app/oracle/product/12.1.0/dbhome_1/OPatch/opatch prereq CheckCOnflictAgainstOHWithDetail -ph ./

Oracle Interim Patch Installer version 12.1.0.1.3

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

PREREQ session

Oracle Home       : /home/oracle/app/oracle/product/12.1.0/dbhome_1

Central Inventory : /home/oracle/app/oraInventory

   from           : /home/oracle/app/oracle/product/12.1.0/dbhome_1/oraInst.loc

OPatch version    : 12.1.0.1.3

OUI version       : 12.1.0.2.0

Log file location : /home/oracle/app/oracle/product/12.1.0/dbhome_1/cfgtoollogs/opatch/opatch2016-05-13_08-38-21AM_1.log

Invoking prereq “checkconflictagainstohwithdetail”

Prereq “checkConflictAgainstOHWithDetail” passed.

OPatch succeeded.

  1. Download the latest version of Patch before applying the patches. You can search latest Patch by searching for “Patch 6880880”
  2. Shutdown the Database and Listener
  3. Go to Directory of the Patch and Apply the Patch

[oracle@localhost 22291127]$ /home/oracle/app/oracle/product/12.1.0/dbhome_1/OPatch/opatch apply

Oracle Interim Patch Installer version 12.1.0.1.10

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

Oracle Home       : /home/oracle/app/oracle/product/12.1.0/dbhome_1

Central Inventory : /home/oracle/app/oraInventory

   from           : /home/oracle/app/oracle/product/12.1.0/dbhome_1/oraInst.loc

OPatch version    : 12.1.0.1.10

OUI version       : 12.1.0.2.0

Log file location : /home/oracle/app/oracle/product/12.1.0/dbhome_1/cfgtoollogs/opatch/opatch2016-05-13_08-44-41AM_1.log

Verifying environment and performing prerequisite checks…

OPatch continues with these patches:   19769480  20299023  20831110  21359755  21948354  22291127

Do you want to proceed? [y|n]

y

User Responded with: Y

All checks passed.

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

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.

(Oracle Home = ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’)

Is the local system ready for patching? [y|n]

y

User Responded with: Y

Backing up files…

Applying sub-patch ‘19769480’ to OH ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’

Patching component oracle.rdbms.deconfig, 12.1.0.2.0…

Patching component oracle.xdk, 12.1.0.2.0…

Patching component oracle.tfa, 12.1.0.2.0…

Patching component oracle.rdbms.util, 12.1.0.2.0…

Patching component oracle.rdbms, 12.1.0.2.0…

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0…

Patching component oracle.xdk.parser.java, 12.1.0.2.0…

Patching component oracle.oraolap, 12.1.0.2.0…

Patching component oracle.xdk.rsf, 12.1.0.2.0…

Patching component oracle.rdbms.rsf, 12.1.0.2.0…

Patching component oracle.rdbms.rman, 12.1.0.2.0…

Patching component oracle.ldap.rsf, 12.1.0.2.0…

Patching component oracle.ldap.rsf.ic, 12.1.0.2.0…

Applying sub-patch ‘20299023’ to OH ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’

ApplySession: Optional component(s) [ oracle.has.crs, 12.1.0.2.0 ]  not present in the Oracle Home or a higher version is found.

Patching component oracle.tfa, 12.1.0.2.0…

Patching component oracle.rdbms.deconfig, 12.1.0.2.0…

Patching component oracle.rdbms.rsf, 12.1.0.2.0…

Patching component oracle.rdbms, 12.1.0.2.0…

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0…

Patching component oracle.rdbms.rsf.ic, 12.1.0.2.0…

Patching component oracle.ldap.rsf, 12.1.0.2.0…

Patching component oracle.ldap.rsf.ic, 12.1.0.2.0…

Applying sub-patch ‘20831110’ to OH ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’

Patching component oracle.rdbms, 12.1.0.2.0…

Patching component oracle.oraolap.dbscripts, 12.1.0.2.0…

Patching component oracle.ldap.rsf, 12.1.0.2.0…

Patching component oracle.tfa, 12.1.0.2.0…

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0…

Patching component oracle.rdbms.rsf, 12.1.0.2.0…

Applying sub-patch ‘21359755’ to OH ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’

Patching component oracle.assistants.server, 12.1.0.2.0…

Patching component oracle.rdbms.rsf, 12.1.0.2.0…

Patching component oracle.rdbms, 12.1.0.2.0…

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0…

Patching component oracle.tfa, 12.1.0.2.0…

Applying sub-patch ‘21948354’ to OH ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’

Patching component oracle.rdbms.deconfig, 12.1.0.2.0…

Patching component oracle.xdk, 12.1.0.2.0…

Patching component oracle.tfa, 12.1.0.2.0…

Patching component oracle.rdbms, 12.1.0.2.0…

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0…

Patching component oracle.xdk.parser.java, 12.1.0.2.0…

Patching component oracle.rdbms.rsf, 12.1.0.2.0…

Patching component oracle.xdk.rsf, 12.1.0.2.0…

Applying sub-patch ‘22291127’ to OH ‘/home/oracle/app/oracle/product/12.1.0/dbhome_1’

ApplySession: Optional component(s) [ oracle.oid.client, 12.1.0.2.0 ]  not present in the Oracle Home or a higher version is found.

Patching component oracle.ldap.rsf, 12.1.0.2.0…

Patching component oracle.ldap.client, 12.1.0.2.0…

Patching component oracle.tfa, 12.1.0.2.0…

Patching component oracle.rdbms, 12.1.0.2.0…

Patching component oracle.rdbms.dbscripts, 12.1.0.2.0…

Patching component oracle.rdbms.rsf, 12.1.0.2.0…

Patching component oracle.oraolap, 12.1.0.2.0…

Patching component oracle.rdbms.rman, 12.1.0.2.0…

Patching component oracle.oraolap.dbscripts, 12.1.0.2.0…

Composite patch 22291127 successfully applied.

Log file location: /home/oracle/app/oracle/product/12.1.0/dbhome_1/cfgtoollogs/opatch/opatch2016-05-13_08-44-41AM_1.log

OPatch succeeded.

  1. Post- Patch Installation

The datapatch utility will then run the necessary apply scripts to load the modified SQL files into the database. An entry will be added to the dba_registry_sqlpatch view reflecting the patch application. In the dba_registry_sqlpatch view, verify the Status for the APPLY is “SUCCESS”.

Startup the Database

sqlplus “/as sysdba”

startup

alter pluggable database all open;

[oracle@localhost 22291127]$ /home/oracle/app/oracle/product/12.1.0/dbhome_1/OPatch/datapatch -verbose

SQL Patching tool version 12.1.0.2.0 on Fri May 13 08:50:32 2016

Copyright (c) 2015, Oracle.  All rights reserved.

Log file for this invocation: /home/oracle/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_7427_2016_05_13_08_50_32/sqlpatch_invocation.log

Connecting to database…OK

Note:  Datapatch will only apply or rollback SQL fixes for PDBs

       that are in an open state, no patches will be applied to closed PDBs.

       Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation

       (Doc ID 1585822.1)

Bootstrapping registry and package to current versions…done

Determining current state…done

Current state of SQL patches:

Bundle series PSU:

  ID 160419 in the binary registry and not installed in any PDB

Adding patches to installation queue and performing prereq checks…

Installation queue:

  For the following PDBs: CDB$ROOT PDB$SEED PDBDEV

    Nothing to roll back

    The following patches will be applied:

      22291127 (Database Patch Set Update : 12.1.0.2.160419 (22291127))

Installing patches…

Patch installation complete.  Total patches installed: 3

Validating logfiles…

Patch 22291127 apply (pdb CDB$ROOT): SUCCESS

  logfile: /home/oracle/app/oracle/cfgtoollogs/sqlpatch/22291127/19694308/22291127_apply_CDBDEV_CDBROOT_2016May13_08_52_30.log (no errors)

Patch 22291127 apply (pdb PDB$SEED): SUCCESS

  logfile: /home/oracle/app/oracle/cfgtoollogs/sqlpatch/22291127/19694308/22291127_apply_CDBDEV_PDBSEED_2016May13_08_52_51.log (no errors)

Patch 22291127 apply (pdb PDBDEV): SUCCESS

  logfile: /home/oracle/app/oracle/cfgtoollogs/sqlpatch/22291127/19694308/22291127_apply_CDBDEV_PDBDEV_2016May13_08_52_50.log (no errors)

SQL Patching tool complete on Fri May 13 08:53:04 2016

If you are using the Oracle Recovery Manager, the catalog needs to be upgraded. Enter the following command to upgrade it:

$ rman catalog username/password@alias

RMAN> UPGRADE CATALOG;

The datapatch will run the SQL load files in CDB and all PDB’s as well.

So that’s it. We have patched the Oracle 12c with CDB and PDB to the latest PSU.

OPatch for 11gR2(11.2.0.3) RAC Database+Grid on Sparc 64-Bit Solaris10

1. Install Latest OPatch clients from support.oracle.com

– As Grid User —

unzip p6880880_112000_SOLARIS64.zip -d $ORACLE_HOME

##Replace All
– As Oracle User —

unzip p6880880_112000_SOLARIS64.zip -d $ORACLE_HOME
##Replace All

 
2. Set PATH variable for OPatch for both Grid and Oracle user profiles

–oracle–

vi .profile

PATH=/oracle/app/oracle/product/11.2.0/dbhome_1/bin:/oracle/app/oracle/product/11.2.0/dbhome_1/OPatch:$PATH

 

–grid–

vi .profile

PATH=/grid/app/11.2.0/grid/bin:/grid/app/11.2.0/grid/OPatch/:$PATH

 

3. Validate Oracle OPatch inventory

— grid

opatch lsinventory -detail -oh $ORACLE_HOME
— Oracle

opatch lsinventory -detail -oh $ORACLE_HOME

 

4. Unzip the patch files as grid user in a shared location between both nodes

unzip p14275572_112030_<platform>.zip
Determine One-off Patch Conflict Detection and Resolution

$ opatch prereq CheckConflictAgainstOHWithDetail -ph <UNZIPPED_PATCH_LOCATION>/14275605 –oh $GRID_HOME
$ opatch prereq CheckConflictAgainstOHWithDetail -ph <UNZIPPED_PATCH_LOCATION>/14275605 –oh $DB_HOME
$ opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir <UNZIPPED_PATCH_LOCATION>/14275572 –oh $GRID_HOME
$ opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir <UNZIPPED_PATCH_LOCATION>/14275572/custom/server/14275572 –oh $DB_HOM

 

5. OPatching where GI Home Is Not Shared and ACFS File System Is Not Configured and Database Homes Are Not Shared

As Grid user create ocm.rsp file

cd /grid/app/11.2.0/grid/OPatch/ocm/bin

./emocmrsp

 

As root user

export PATH=$PATH:/grid/app/11.2.0/grid/OPatch
opatch auto /var/tmp/ -ocmrf /grid/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp

 

Executing /grid/app/11.2.0/grid/perl/bin/perl /grid/app/11.2.0/grid/OPatch/crs/patch11203.pl -patchdir /var -patchn tmp -ocmrf /grid/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp -paramfile /grid/app/11.2.0/grid/crs/install/crsconfig_params
/grid/app/11.2.0/grid/crs/install/crsconfig_params
/grid/app/11.2.0/grid/crs/install/s_crsconfig_defs

This is the main log file: /grid/app/11.2.0/grid/cfgtoollogs/opatchauto2012-12-02_13-56-59.log
This file will show your detected configuration and all the steps that opatchauto attempted to do on your system: /grid/app/11.2.0/grid/cfgtoollogs/opatchauto2012-12-02_13-56-59.report.log

2012-12-02 13:56:59: Starting Clusterware Patch Setup
Using configuration parameter file: /grid/app/11.2.0/grid/crs/install/crsconfig_params
patch /var/tmp/14275572/custom/server/14275572 apply successful for home /oracle/app/oracle/product/11.2.0/dbhome_1
patch /var/tmp/14275605 apply successful for home /oracle/app/oracle/product/11.2.0/dbhome_1
CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.crsd’ on ‘csftest-1’
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN1.lsnr’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.cvu’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.OCR.dg’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.registry.acfs’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.DATA.dg’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.FRA.dg’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.oc4j’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.cvu’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.LISTENER_SCAN1.lsnr’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.scan1.vip’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.scan1.vip’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.csftest-1.vip’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.csftest-1.vip’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.DATA.dg’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.FRA.dg’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.registry.acfs’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.oc4j’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.OCR.dg’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.asm’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.asm’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.ons’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.ons’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.net1.network’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.net1.network’ on ‘csftest-1’ succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘csftest-1’ has completed
CRS-2677: Stop of ‘ora.crsd’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.ctssd’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.evmd’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.asm’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘csftest-1’
CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.evmd’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.mdnsd’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.drivers.acfs’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.asm’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘csftest-1’ succeeded
CRS-2677: Stop of ‘ora.ctssd’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.cssd’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.cssd’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.gipcd’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.gipcd’ on ‘csftest-1’ succeeded
CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘csftest-1’
CRS-2677: Stop of ‘ora.gpnpd’ on ‘csftest-1’ succeeded
CRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘csftest-1’ has completed
CRS-4133: Oracle High Availability Services has been stopped.
The path “/grid/app/11.2.0/grid/bin/acfsrepl_initializer” does not exist
The path “/grid/app/11.2.0/grid/bin/acfsrepl_apply” does not exist
The path “/grid/app/11.2.0/grid/bin/acfsrepl_apply.bin” does not exist
Successfully unlock /grid/app/11.2.0/grid

patch /var/tmp/14275572 apply successful for home /grid/app/11.2.0/grid
patch /var/tmp/14275605 apply successful for home /grid/app/11.2.0/grid
CRS-4123: Oracle High Availability Services has been started.

 

 
6. Patch Post-Installation Instructions
6.1 Apply conflict resolution patches if any

6.2 Load Modified SQl files into the database

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle.sql psu apply
SQL> QUIT
Check for Errors in Log –> /oracle/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/catbundle/catbundle_PSU_SWX_APPLY_2012Dec02_14_57_04.log
6.3 If using RMAN catalog then Upgrade Oracle Recovery Manager Catalog

$ rman catalog username/password@alias
RMAN> UPGRADE CATALOG;
6.4 Patch Post-Installation Instructions for Databases Created or Upgraded after Installation of Patch in the Oracle Home

These instructions are for a database that is created or upgraded after the installation of the patch.

You must execute the steps 6.2 “Loading Modified SQL Files into the Database” for any new database only if it was created by any of the following methods:

Using DBCA (Database Configuration Assistant) to select a sample database (General, Data Warehouse, Transaction Processing)

Using a script that was created by DBCA that creates a database from a sample database

There are no actions required for databases that have been upgraded.

 

7. Check if patches applied and compare the output with the one you ran before
$ opatch lsinventory

 

8. Rollback OPatch for both Non-Shared GI and DBMS homes

As Grid user

opatch auto /var/tmp/ -rollback -ocmrf /grid/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
For each database instance running out of the ORACLE_HOME, connect to the database using SQL*Plus as SYSDBA and run the rollback script as follows:
cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle_PSU_<database SID PREFIX>_ROLLBACK.sql
SQL> QUIT
Check the log file for any errors. The log file is found in $ORACLE_BASE/cfgtoollogs/catbundle and is named catbundle_PSU_<database SID>_ROLLBACK_<TIMESTAMP>.log where TIMESTAMP is of the form YYYYMMMDD_HH_MM_SS.
Ensure that you verify the Oracle Inventory and compare the output with the one you ran before
$ opatch lsinventory

 

 

Apply Opatch on Oracle 10g for PSU patches.

####PSU patching, interim patches #####

Sometimes before moving to a new 10.2.0.* version there are CPU patches released on a regular basis. Here I would illustrate how to use opatch utility in a simple way.

*Before you proceed with PSU patches backup the entire file system of
$ORACLE_HOME and take cold backup of database

*Check environment variable PATH
echo $PATH

if not set..set using command
export PATH=$PATH:/usr/ccs/bin

opatch lsinventory

1. Download the interim patch from Metalink like p9119284_10204_Solaris-64.zip

2. goto $ORACLE_HOME/Opatch

3. create folder ‘patches’

4. FTP file p9119284_10204_Solaris-64.zip to $ORACLE_HOME/Opatch/patches

5. opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u2/oracle/product/10.1.0/db/oradb10g_home/OPatch/patches/p9119284_10204_Solaris-64.zip

Please Note: when using phBaseDir the directory pointed to can only contain Oracle patches and no other directories or files.

6. If the above command fails download the latest Opatch utility for 10.2.0.4 from metalink and unzip it in $ORACLE_HOME and overwrite the current Opatch. LINK BELOW

https://updates.oracle.com/Orion/PatchDetails/handle_plat_lang_change?release=80102000&plat_lang=46P&patch_file=&file_id=&password_required=&password_required_readme=&merged_trans=&aru=12030130&patch_num=6880880&patch_num_id=979663&default_release=80102000&default_plat_lang=23P&default_compatible_with=&patch_password=&orderby=&direction=&no_header=0&sortcolpressed=&tab_number=

This normally happens You are trying to apply a Patchset Update (PSU), patch with Overlays or patch with Prerequisites.And your current version of opatch does no support Overlays. So install the latest version of Opatch

7. stop listener and database and close SQL session

lsnrctl stop
SQL> shutdown immediate

8. unzip p9119284_10204_Solaris-64.zip

cd 9119284

opatch apply

# this will take a while, maybe half an hour.

9.   login as root and go to ‘9119284’ directory

export ORACLE_HOME=$ORACLE_HOME:/u2/oracle/product/10.1.0/db/oradb10g_home

run like >>>   sh psu_root.sh

10. login back as oracle user

sqlplus “/as sysdba”

SQL> STARTUP

SQL> @?/rdbms/admin/catbundle.sql

check cat bundle log for errors..if nothing proceed…

11. Recompile Views in database

If you want to check whether view recompilation has already been performed for the database, execute the following statement.

SELECT * FROM registry$history where ID = ‘6452863’;

If the view recompilation has been performed, this statement returns one or more rows. If the view recompilation has not been performed, this statement returns no rows.

check for recompilation for objects needed. by doing below steps
cd $ORACLE_HOME/cpu/view_recompile
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> @recompile_precheck_jan2008cpu.sql
SQL> QUIT

The purpose of this step is to help you determine whether view recompilation should be done at the same time as the PSU install, or scheduled later.

12. If the database is not in a RAC environment, perform this step.
cd $ORACLE_HOME/cpu/view_recompile
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP UPGRADE
SQL> @view_recompile_jan2008cpu.sql
SQL> SHUTDOWN;
SQL> STARTUP;
SQL> QUIT

If any invalid objects were reported, run the utlrp.sql script as follows:

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> @utlrp.sql

Shut down and restart the database in normal mode and run utlrp.sql to
recompile invalid objects

Then, manually recompile any invalid objects. For example:

SQL> alter package schemaname.packagename compile;