Search This Blog

Friday, January 6, 2023

Applying December, 2022 Monthly Recommended patch to 19c RAC database home




 

In this post we will see how we can apply December 2022 MRP to 19c RAC database home.

Oracle's Monthly Recommended Patches (MRP)

MRPs are a collection of one-off patches bundled together. Starting with update 19.17, Oracle will be providing these Monthly recommended patches for Linux x86-64 version. 

This MRPs will include to provide proactive patching between Release Updates and will include the fixes documented in "Oracle Database Important Recommended Patches" (My Oracle Support Doc ID 555.1), 

MRPs are cumulative patches and they don't  change the release number and they are deployed using Opatchauto and as of now , MRPs are available only on the Linux x86-64 platform.


Where to download the MRPs from?

we can download the Oracle monthly recommended patches from the note ((Doc ID 888.1))












Bugs Fixed by this Database MRP 19.17.0.0.221220.
The following bugs are fixed by this cumulative patch, including bugs from the previous 19.17 MRPs.


MRP version

Bug Fixes

Database MRP 19.17.0.0.221220

MLR 34789241(34060122, 33896423, 34310304, 34377917, 34485380, 34562023), 34715072, 34545238, 32295794

Database MRP 19.17.0.0.221115

33896423343339863069145434538232345740483436662734724125


Source Environment setup

RAC Database  : LABDBPR ( labdbpr1 and labdbpr2) 
GRID Home         : /u01/app/19.3.0.0/grid
RDBMS Home       : /u01/app/oracle/product/19.14.0.0/dbhome_1
Version                 : Oracle Database 19c EE - Production Version 19.16.0.0.0
hosts          : oraprim01 & oraprim02

Lets apply the first Monthly recommended patch for our 19c RAC database. 

1) Download the below MRP patch and unzip it in  '/u01/software' of both the nodes.

p34819700_1917000DBRU_Linux-x86-64.zip



2) Check the readme of the patch for patch info.













Our Opatch version is 12.2.1.33, so we do have the latest Opatch version installed already


4) Run the patch conflicts for the MRP  in all the nodes of the cluster.

Conflict check on Node1

[oracle@oraprim01 software]$ORACLE_HOME/OPatch/opatchauto apply -binary /u01/software/34819700 -analyze -online

Oracle Home : /u01/app/oracle/product/19.3.0.0/dbhome_1

OPatchAuto binary patching Tool
Copyright (c)2014, Oracle Corporation. All rights reserved.

OPatchauto Version : 13.9.5.0.0
Running from       : /u01/app/oracle/product/19.3.0.0/dbhome_1

opatchauto log file: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/opatchauto_2023-01-06_10-10-49_binary.log

Patch selected: /u01/software/34819700
Analysing this list of patches :
[/u01/software/34819700/34724125, /u01/software/34819700/34366627, /u01/software/34819700/34574048, /u01/software/34819700/34538232, /u01/software/34819700/30691454, /u01/software/34819700/34333986, /u01/software/34819700/34715072, /u01/software/34819700/34789241, /u01/software/34819700/32295794, /u01/software/34819700/34545238] ...

Analysis completed.

==Following patches were SKIPPED:

Patch: /u01/software/34819700/34724125
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log
Reason: /u01/software/34819700/34724125 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34366627
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log
Reason: /u01/software/34819700/34366627 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34574048
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log
Reason: /u01/software/34819700/34574048 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34538232
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log
Reason: /u01/software/34819700/34538232 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/30691454
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log
Reason: /u01/software/34819700/30691454 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34333986
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log
Reason: /u01/software/34819700/34333986 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1


==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /u01/software/34819700/34715072
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log

Patch: /u01/software/34819700/34789241
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log

Patch: /u01/software/34819700/32295794
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log

Patch: /u01/software/34819700/34545238
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-10-51AM_1.log

opatchauto SUCCEEDED.

[oracle@oraprim01 software]$


Conflict check on Node2.


[oracle@oraprim02 software]$ echo $ORACLE_HOME
/u01/app/oracle/product/19.3.0.0/dbhome_1
[oracle@oraprim02 software]$ echo $ORACLE_SID
labdbpr2
[oracle@oraprim02 software]$ $ORACLE_HOME/OPatch/opatchauto apply -binary /u01/software/34819700 -analyze -online
Oracle Home : /u01/app/oracle/product/19.3.0.0/dbhome_1

OPatchAuto binary patching Tool
Copyright (c)2014, Oracle Corporation. All rights reserved.

OPatchauto Version : 13.9.5.0.0
Running from       : /u01/app/oracle/product/19.3.0.0/dbhome_1

opatchauto log file: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/opatchauto_2023-01-06_10-15-00_binary.log

Patch selected: /u01/software/34819700

Analysing this list of patches :
[/u01/software/34819700/34724125, /u01/software/34819700/34366627, /u01/software/34819700/34574048, /u01/software/34819700/34538232, /u01/software/34819700/30691454, /u01/software/34819700/34333986, /u01/software/34819700/34715072, /u01/software/34819700/34789241, /u01/software/34819700/32295794, /u01/software/34819700/34545238] ...

Analysis completed.
==Following patches were SKIPPED:
Patch: /u01/software/34819700/34724125
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log
Reason: /u01/software/34819700/34724125 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34366627
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log
Reason: /u01/software/34819700/34366627 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34574048
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log
Reason: /u01/software/34819700/34574048 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34538232
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log
Reason: /u01/software/34819700/34538232 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/30691454
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log
Reason: /u01/software/34819700/30691454 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34333986
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log
Reason: /u01/software/34819700/34333986 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

==Following patches were SUCCESSFULLY analyzed to be applied:

Patch: /u01/software/34819700/34715072
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log

Patch: /u01/software/34819700/34789241
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log

Patch: /u01/software/34819700/32295794
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log

Patch: /u01/software/34819700/34545238
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-15-03AM_1.log

opatchauto SUCCEEDED.

[oracle@oraprim02 software]$


6) Stop the oracle database running from the home to which we are going apply the MRP


Since this is a RAC database, lets stop the instance using srvctl command.

[oracle@oraprim01 u01]$ srvctl status database -d labdbpr
Instance labdbpr1 is running on node oraprim01
Instance labdbpr2 is running on node oraprim02

[oracle@oraprim01 u01]$ srvctl stop instance -d labdbpr -i labdbpr1

[oracle@oraprim01 u01]$ srvctl status database -d labdbpr
Instance labdbpr1 is not running on node oraprim01
Instance labdbpr2 is running on node oraprim02
[oracle@oraprim01 u01]$


7) Apply the patch on the first node, (oraprim01) where the database instance is currently down.


$ORACLE_HOME/OPatch/opatchauto apply -binary /u01/software/34819700  -oh $ORACLE_HOME -target_type oracle_database

OPatchAuto binary patching Tool
Copyright (c)2014, Oracle Corporation. All rights reserved.

OPatchauto Version : 13.9.5.0.0
Running from       : /u01/app/oracle/product/19.3.0.0/dbhome_1

opatchauto log file: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/opatchauto_2023-01-06_10-23-07_binary.log

Target type : oracle_database
Patch selected: /u01/software/34819700
Analysing this list of patches :
[/u01/software/34819700/34724125, /u01/software/34819700/34366627, /u01/software/34819700/34574048, /u01/software/34819700/34538232, /u01/software/34819700/30691454, /u01/software/34819700/34333986, /u01/software/34819700/34715072, /u01/software/34819700/34789241, /u01/software/34819700/32295794, /u01/software/34819700/34545238] ...

Analysis completed.
Applying the patches ...

Patches successfully applied.
==Following patches were SKIPPED:

Patch: /u01/software/34819700/34724125
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
Reason: /u01/software/34819700/34724125 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34366627
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
Reason: /u01/software/34819700/34366627 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34574048
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
Reason: /u01/software/34819700/34574048 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34538232
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
Reason: /u01/software/34819700/34538232 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/30691454
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
Reason: /u01/software/34819700/30691454 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34333986
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
Reason: /u01/software/34819700/34333986 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

==Following patches were SUCCESSFULLY applied:
Patch: /u01/software/34819700/32295794
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log

Patch: /u01/software/34819700/34545238
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log

Patch: /u01/software/34819700/34715072
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log

Patch: /u01/software/34819700/34789241
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-23-09AM_1.log
opatchauto SUCCEEDED.
[oracle@oraprim01 software]$ 

8) Start the instance on the node, oraprim01 and proceed with next step.


[oracle@oraprim01 software]$  srvctl status database -d labdbpr
Instance labdbpr1 is not running on node oraprim01
Instance labdbpr2 is running on node oraprim02

[oracle@oraprim01 software]$ srvctl start  instance -d labdbpr -i labdbpr1

[oracle@oraprim01 software]$ srvctl status database -d labdbpr
Instance labdbpr1 is running on node oraprim01
Instance labdbpr2 is running on node oraprim02
[oracle@oraprim01 software]$

9) Stop the 2nd instance of the database on node, prim02 and apply the patch on this node .

[oracle@oraprim02 software]$  srvctl status database -d labdbpr
Instance labdbpr1 is running on node oraprim01
Instance labdbpr2 is running on node oraprim02
[oracle@oraprim02 software]$ srvctl stop  instance -d labdbpr -i labdbpr2


[oracle@oraprim02 software]$ srvctl status database -d labdbpr
Instance labdbpr1 is running on node oraprim01
Instance labdbpr2 is not running on node oraprim02
[oracle@oraprim02 software]$ 

10) Apply the patch on the 2nd node (prim02) as shown below.


[oracle@oraprim02 software]$ $ORACLE_HOME/OPatch/opatchauto apply -binary /u01/software/34819700  -oh $ORACLE_HOME -target_type oracle_database
Oracle Home : /u01/app/oracle/product/19.3.0.0/dbhome_1

OPatchAuto binary patching Tool
Copyright (c)2014, Oracle Corporation. All rights reserved.

OPatchauto Version : 13.9.5.0.0
Running from       : /u01/app/oracle/product/19.3.0.0/dbhome_1

opatchauto log file: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/opatchauto_2023-01-06_10-29-37_binary.log

Target type : oracle_database
Patch selected: /u01/software/34819700

Analysing this list of patches :
[/u01/software/34819700/34724125, /u01/software/34819700/34366627, /u01/software/34819700/34574048, /u01/software/34819700/34538232, /u01/software/34819700/30691454, /u01/software/34819700/34333986, /u01/software/34819700/34715072, /u01/software/34819700/34789241, /u01/software/34819700/32295794, /u01/software/34819700/34545238] ...

Analysis completed.
Applying the patches ...
Patches successfully applied.
==Following patches were SKIPPED:
Patch: /u01/software/34819700/34724125
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log
Reason: /u01/software/34819700/34724125 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34366627
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log
Reason: /u01/software/34819700/34366627 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34574048
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log
Reason: /u01/software/34819700/34574048 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34538232
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log
Reason: /u01/software/34819700/34538232 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/30691454
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log
Reason: /u01/software/34819700/30691454 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

Patch: /u01/software/34819700/34333986
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log
Reason: /u01/software/34819700/34333986 is not required to be applied to oracle home /u01/app/oracle/product/19.3.0.0/dbhome_1

==Following patches were SUCCESSFULLY applied:
Patch: /u01/software/34819700/32295794
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log

Patch: /u01/software/34819700/34545238
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log

Patch: /u01/software/34819700/34715072
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log

Patch: /u01/software/34819700/34789241
Log: /u01/app/oracle/product/19.3.0.0/dbhome_1/cfgtoollogs/opatchauto/core/opatch/opatch2023-01-06_10-29-39AM_1.log

opatchauto SUCCEEDED.
[oracle@oraprim02 software]$


11) Start the instance on the node, oraprim02.


[oracle@oraprim02 software]$  srvctl start instance -d labdbpr -i labdbpr2

[oracle@oraprim02 software]$ srvctl status database -d labdbpr
Instance labdbpr1 is running on node oraprim01
Instance labdbpr2 is running on node oraprim02
[oracle@oraprim02 software]$


12) Do we need 'datapatch' after applying the MRP patch?

Always read the README for any pre or post patch steps.
As per the README of the MRP patch, MRP 19.17.0.0.221220 does not include any SQL changes and hence datapatch does not need to be run post installation. 
This may change for future MRPs

13) How to check if the MRPs are applied or what MRPs are applied in the existing Oracle database home?


unfortunately, neither 'opatch lsinventory' or dba_registry gives any info on the MRPs' . lsinventory command gives the list of all the 
[oracle@oraprim01 software]$  $ORACLE_HOME/OPatch/opatch lsinv | grep 34819700
[oracle@oraprim01 software]$

We can only check what are the individual patches that were applied as part of this specific MRP patch. we can run the lsinventory command which will give all the patches that have been applied with this MRP.





















































May be Oracle will include the MRP patch info in the inventory in future releases or they provide a way to check to see if a specific MRP is applied or not.

Thanks for reading this post.



Thanks
Sambaiah Sammeta

No comments:

Post a Comment