PATCHING AN ORACLE DATABASE WITH OPATCH (Upgrade 19.3 to 19.9)

Oracle çıkardığı her ürünü veya ürün versiyonundan sonra, çıkan hatalar, buglar, güvenlik açıkları, eksiklikler veya eklenen yenilikler için Patchler (Yamalar) yayınlar. Bunlarıda kendi sitesinde ilan eder https://www.oracle.com/security-alerts/. Aynı zamanda genellikle 6 ayda bir rutin olarak PSU (Patch Set Update) yayınlanır, bu yayınlanan PSU lar içerisinde diğer güvenlik yamaları vs. zaten vardır, Yani rutin olarak PSU yamaları geçmek, geçmiş yamaları da içerecektir.

Öncelikle Uygun Patch indirelim (Yukarıdaki linkten uygun patchi bulup indiriyoruz). Benim için en güncel database yaması Patch 31720396 yamayı indirip uygumasına geçiyorz. (Patch Dokumanını Okuduğumuzda Combo Patch diye geçiyor iki adet yama içeriyor). Adımları yazalım.

Patch işlemine başlamadan önce mutlaka BACKUP alınız…….

  • Download Patch
  • Hataları Kontrol Edelim (Check for Conflicts)
  • Stop Database
  • Patch Database
  • Start Database
  • Patch Sonrası İşlemler (Post Patch Steps)
mkdir -p /u01/pacth
chown -R oracle:oinstall /u01/patch
chmod -R 775 /u01/patch
cd /u01/patch
unzip p31720396_190000_Linux-x86-64.zip
rm p31720396_190000_Linux-x86-64.zip
[[email protected] patch]$ ls
31720396  PatchSearch.xml
cd 31720396/
ls
31668882  31771877  PatchSearch.xml  README.html

/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
Oracle Interim Patch Installer version 12.2.0.1.17
Copyright (c) 2021, Oracle Corporation.  All rights reserved.

PREREQ session

Oracle Home       : /u01/app/oracle/product/19.0.0.0/db
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0.0/db/oraInst.loc
OPatch version    : 12.2.0.1.17
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/opatch2021-01-02_20-35-15PM_1.log

Invoking prereq "checkconflictagainstohwithdetail"

Prereq "checkConflictAgainstOHWithDetail" passed.

OPatch succeeded.

CheckConflict sonucu Patch in başarılı bir şekilde uygulanacağını bize iletti. Güzel o halde devam edebiliriz.

sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jan 2 20:51:32 2021
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> shu immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

Listener açık ise onuda kapatalım

lsnrctl stop

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 02-JAN-2021 20:54:51

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
The command completed successfully

Veritabanımızı kapattık, listener kapalı, şimdi Patch i uygulayalım.

 pwd
/u01/patch/31720396/31668882
/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch apply
Oracle Interim Patch Installer version 12.2.0.1.23
Copyright (c) 2021, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/19.0.0.0/db
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0.0/db/oraInst.loc
OPatch version    : 12.2.0.1.23
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/opatch2021-01-02_21-19-59PM_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   31668882

Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/19.0.0.0/db')


Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '31668882' to OH '/u01/app/oracle/product/19.0.0.0/db'

Patching component oracle.javavm.server, 19.0.0.0.0...

Patching component oracle.javavm.client, 19.0.0.0.0...

Patching component oracle.javavm.server.core, 19.0.0.0.0...

Patching component oracle.rdbms.dbscripts, 19.0.0.0.0...

Patching component oracle.rdbms, 19.0.0.0.0...
Patch 31668882 successfully applied.
Log file location: /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/opatch2021-01-02_21-19-59PM_1.log

OPatch succeeded.

cd ..
cd 31771877/
 /u01/app/oracle/product/19.0.0.0/db/OPatch/opatch apply
Oracle Interim Patch Installer version 12.2.0.1.23
Copyright (c) 2021, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/19.0.0.0/db
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0.0/db/oraInst.loc
OPatch version    : 12.2.0.1.23
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/opatch2021-01-02_21-22-08PM_1.log

Verifying environment and performing prerequisite checks...
OPatch continues with these patches:   31771877

Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.

Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/19.0.0.0/db')


Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '31771877' to OH '/u01/app/oracle/product/19.0.0.0/db'
ApplySession: Optional component(s) [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.options.olap.awm, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.xdk.companion, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.assistants.usm, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.sqlj, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ]  not present in the Oracle Home or a higher version is found.

.......
Patching component oracle.jdk, 1.8.0.201.0...
Patch 31771877 successfully applied.
Sub-set patch [29517242] has become inactive due to the application of a super-set patch [31771877].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/opatch2021-01-02_21-22-08PM_1.log

OPatch succeeded.

Şimdi Veriabanımız ve listenerı açalım

sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on Sat Jan 2 21:26:41 2021
Version 19.9.0.0.0


Copyright (c) 1982, 2020, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 1174404432 bytes
Fixed Size                  8895824 bytes
Variable Size             318767104 bytes
Database Buffers          838860800 bytes
Redo Buffers                7880704 bytes
Database mounted.
Database opened.
SQL>

Upgrade başarı ile tamamlandı, Post Patch işlemini de yaptığımızda işimiz bitecek.

pwd
/u01/patch/31720396/31771877
 /u01/app/oracle/product/19.0.0.0/db/OPatch/datapatch -verbose

SQL Patching tool version 19.9.0.0.0 Production on Sat Jan  2 21:33:10 2021
Copyright (c) 2012, 2020, Oracle.  All rights reserved.

Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_27466_2021_01_02_21_33_10/sqlpatch_invocation.log

Connecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...done

Current state of interim SQL patches:
Interim patch 31668882 (OJVM RELEASE UPDATE: 19.9.0.0.201020 (31668882)):
  Binary registry: Installed
  SQL registry: Not installed

Current state of release update SQL patches:
  Binary registry:
    19.9.0.0.0 Release_Update 200930183249: Installed
  SQL registry:
    Applied 19.3.0.0.0 Release_Update 190410122720 successfully on 02-JAN-21 08.48.48.338014 PM

Adding patches to installation queue and performing prereq checks...done
Installation queue:
  No interim patches need to be rolled back
  Patch 31771877 (Database Release Update : 19.9.0.0.201020 (31771877)):
    Apply from 19.3.0.0.0 Release_Update 190410122720 to 19.9.0.0.0 Release_Update 200930183249
  The following interim patches will be applied:
    31668882 (OJVM RELEASE UPDATE: 19.9.0.0.201020 (31668882))

Installing patches...
Patch installation complete.  Total patches installed: 2


Validating logfiles...done
Patch 31771877 apply: SUCCESS

  logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/31771877/23869227/31771877_apply_RACDB_2021Jan02_21_33_48.log (no errors)
Patch 31668882 apply: SUCCESS

  logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/31668882/23790068/31668882_apply_RACDB_2021Jan02_21_33_24.log (no errors)
SQL Patching tool complete on Sat Jan  2 21:36:50 2021


Patch işlemimiz bitti. Kontrol edebiliriz ./opatch lsinventory diyerek hangi tarihte çıkan patchi ne zaman apply etmişiz hangi bug ları içeriyor vs. bilgileri görebiliriz. Bakalım ; (Bu güne kadar çıkmış tüm bug ları içerdiği için uzun bir liste olacak :))

/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch lsinventory
Oracle Interim Patch Installer version 12.2.0.1.23
Copyright (c) 2021, Oracle Corporation.  All rights reserved.


Oracle Home       : /u01/app/oracle/product/19.0.0.0/db
Central Inventory : /u01/app/oraInventory
   from           : /u01/app/oracle/product/19.0.0.0/db/oraInst.loc
OPatch version    : 12.2.0.1.23
OUI version       : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/opatch2021-01-02_21-42-03PM_1.log

Lsinventory Output file location : /u01/app/oracle/product/19.0.0.0/db/cfgtoollogs/opatch/lsinv/lsinventory2021-01-02_21-42-03PM.txt
--------------------------------------------------------------------------------
Local Machine Information::
Hostname: standbydb1.ttnet.com
ARU platform id: 226
ARU platform description:: Linux x86-64

Installed Top-level Products (1):

Oracle Database 19c                                                  19.0.0.0.0
There are 1 products installed in this Oracle Home.


Interim patches (3) :

Patch  31771877     : applied on Sat Jan 02 21:23:48 EET 2021

Unique Patch ID:  23869227
Patch description:  "Database Release Update : 19.9.0.0.201020 (31771877)"

   Created on 7 Oct 2020, 21:34:19 hrs PST8PDT

   Bugs fixed:
     30150710, 31935717, 7391838, 8460502, 8476681, 14735102, 17428816
     17468475, 19080742, 19697993, 20313356, 21374587, 21639146, 21888352
     .........Uzuyan Liste

Patch  31668882     : applied on Sat Jan 02 21:20:24 EET 2021
Unique Patch ID:  23790068
Patch description:  "OJVM RELEASE UPDATE: 19.9.0.0.201020 (31668882)"
   Created on 14 Sep 2020, 06:32:18 hrs PST8PDT
   Bugs fixed:
     29540327, 29254623, 29445548, 29774362, 30134746, 30160625, 29942275
     30534662, 29512125, 30855101, 31306261, 31359215, 30895577, 29224710
     26716835, 31668872

Patch  29585399     : applied on Thu Apr 18 10:21:33 EET 2019
Unique Patch ID:  22840393
Patch description:  "OCW RELEASE UPDATE 19.3.0.0.0 (29585399)"
   Created on 9 Apr 2019, 19:12:47 hrs PST8PDT
   Bugs fixed:
     27222128, 27572040, 27604329, 27760043, 27877830, 28302580, 28470673
     28621543, 28642469, 28699321, 28710663, 28755846, 28772816, 28785321
     28800508, 28808652, 28815557, 28847541, 28847572, 28870496, 28871040
     28874416, 28877252, 28881191, 28881848, 28888083, 28911140, 28925250
     28925460, 28935956, 28940472, 3, 28942694, 28951332, 28963036, 28968779
     28980448, 28995287, 29003207, 29003617, 29016294, 29018680, 29024876
     29026154, 29027933, 29047127, 29052850, 29058476, 29111631, 29112455
     29117337, 29123444, 29125708, 29125786, 29129476, 29131772, 29132456
     29139727, 29146157, 29147849, 29149170, 29152603, 29152752, 29154631
     29154636, 29154829, 29159216, 29159661, 29160462, 29161923, 29169540
     29169739, 29170717, 29173618, 29181568, 29182920, 29183298, 29186091
     29191827, 29201143, 29201695, 29209545, 29210577, 29210610, 29210624
     29210683, 29213641, 29219627, 29224294, 29225861, 29229839, 29235934
     29242906, 29243749, 29244495, 29244766, 29244968, 29248723, 29249583
     29251564, 29255616, 29260224, 29261695, 29271019, 29273360, 29282090
     29282666, 29285453, 29285621, 29290235, 29292232, 29293806, 29294753
     29299830, 29307090, 29307109, 29311336, 29329675, 29330791, 29339299
     29357821, 29360467, 29360775, 29367971, 29368725, 29379299, 29379381
     29380527, 29381000, 29382296, 29391301, 29393649, 29402110, 29411931
     29413360, 29457319, 29465047



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

OPatch succeeded.

Oracle Database 19c Proactive Patch Information (Doc ID 2521164.1)