
Patch 35319490: GI RELEASE UPDATE 19.20.0.0.0, My Oracle Support sayfasından bizim sistemimize uygun olan , patchi download ediyoruz PSU GRID Patch içerisinde Datbase ve önemli bu fix leri barındırmaktadır;
Bu dosyayı MOS dan indirmemiz ayrıca güncel OPatch yazılımını indirerek OPatch tarafını da güncellememiz gerekmektedir;
OPatch yazılımını güncellemek için ; https://updates.oracle.com/download/6880880.html

PSU Patchlerimiz uygun dizinlerimize alalım;
# mkdir -p /u01/PSU
# chown oracle:oinstall -R /u01/PSU
# chmod 775 p*
# ll
total 3042520
-rwxrwxr-x 1 oracle oinstall 2990370786 Aug 6 14:31 p35319490_190000_Linux-x86-64.zip
-rwxrwxr-x 1 oracle oinstall 125167420 Aug 6 14:30 p6880880_122010_Linux-x86-64.zip
PATCH Lerimiz
35320081 DATABASE RELEASE UPDATE 19.20.0.0.0 --> DB Home ve Grid Home
35320149 OCW RELEASE UPDATE 19.20.0.0.0 --> DB Home ve Grid Home
33575402 DBWLM RELEASE UPDATE 19.0.0.0.0 --> Grid Home
35332537 ACFS RELEASE UPDATE 19.20.0.0.0 --> Grid Home
35553096 TOMCAT RELEASE UPDATE 19.0.0.0.0 --> Grid Home
Başlamadan durumumuza bakalım;
$ /u01/app/19.0.0.0/grid/OPatch/opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517247;ACFS RELEASE UPDATE 19.3.0.0.0 (29517247)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)
29401763;TOMCAT RELEASE UPDATE 19.0.0.0.0 (29401763)
Öncelikle Opatch yazılımızı hem grid için hem oracle database için düzenleyelim;
$ mv /u01/app/oracle/product/19.0.0.0/db/OPatch/ /u01/PSU/DBOPATCH_BCK
(root veya grid user ile)
# mv /u01/app/19.0.0.0/grid/OPatch/ /u01/PSU/GRIDOPATCH_BCK
$ unzip p6880880_122010_Linux-x86-64.zip
$ mv OPatch/ /u01/app/oracle/product/19.0.0.0/db/
-- GRID için
$ unzip p6880880_122010_Linux-x86-64.zip (oracle veya grid ile)
# mv OPatch/ /u01/app/19.0.0.0/grid/ (root ile)
-- Version Kontrol
$ ./opatch version
OPatch Version: 12.2.0.1.39
OPatch succeeded.
Şimdi Patchlerimize sıra geldi öcelikle unzip yapalım , uznip işlemini grid user varsa gird ile değilse oracle ile yapalım.
$ pwd
/u01/PSU/35319490
$ ll
total 140
drwxr-x--- 4 oracle oinstall 48 Jul 16 07:53 33575402
drwxr-x--- 5 oracle oinstall 81 Jul 16 07:53 35320081
drwxr-x--- 5 oracle oinstall 62 Jul 16 07:51 35320149
drwxr-x--- 5 oracle oinstall 62 Jul 16 07:52 35332537
drwxr-x--- 4 oracle oinstall 48 Jul 16 07:53 35553096
drwxr-x--- 2 oracle oinstall 4096 Jul 16 07:57 automation
-rw-rw-r-- 1 oracle oinstall 5824 Jul 17 09:53 bundle.xml
-rw-r--r-- 1 oracle oinstall 128591 Jul 17 13:03 README.html
-rw-r--r-- 1 oracle oinstall 0 Jul 16 07:57 README.txt
README kısmını detaylı okumanızı tavsiye ederim.
Node by node atacağımızı ve Servis seviyesnide hizmet kesintisi yapmadan Patch geçeceğimizi belirtelim bu yüzden önce 1. node üzerinde database ve crs kapatılacak patch işlemi tamamlanacak açılacak , sonrasında aynı işlem 2. node için yapılıp tamamlanacaktır. İşlemlere başlamadan önce nodelar arası oracle ve grid ile geçişler kontrol edilmeli, ayrıca compatible 19c olduğu doğrulanmalıdır.
SQL> show parameter compatible
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
compatible string 19.0.0
Öncelikle Conflick durumlarını kontrol edelim
/u01/app/19.0.0.0/grid/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/33575402
/u01/app/19.0.0.0/grid/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/35320081
/u01/app/19.0.0.0/grid/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/35320149
/u01/app/19.0.0.0/grid/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/35332537
/u01/app/19.0.0.0/grid/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/35553096
--DATABASE HOME TARAFI İÇİN;
/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/35320081
/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/PSU/35319490/35320149
Yukarıda prerequest lerde hepsi için aşağıdaki çıktıyı almalıyız, hata alıyorsak loguna bakarak çözümünü aramalıyız.
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.
OPatch succeeded.
Artık Patch işlemine geçebiliriz, 1 Node için database kapatılır.
$ srvctl stop instance -d dbfrkdb -i dbfrkdb1 -o immediate
$ srvctl status database -d dbfrkdb
Instance dbfrkdb1 is not running on node dgnode1
Instance dbfrkdb2 is running on node dgnode2
Şimdi Grid Home için Patch geçelim;
root user ile prepatch yapılır , prepatch crs i bizim için kapatacaktır ve ön hazılrılıkları yapacaktır , crs logu bu işlem sırasında takip edilir (/u01/app/oracle/diag/crs/dgnode1/crs/trace/alert.log)
# /u01/app/19.0.0.0/grid/crs/install/rootcrs.sh -prepatch
Using configuration parameter file: /u01/app/19.0.0.0/grid/crs/install/crsconfig_params
The log of current session can be found at:
/u01/app/oracle/crsdata/dgnode1/crsconfig/crs_prepatch_dgnode1_2023-08-06_03-35-31PM.log
Oracle Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch level is [724960844].
2023/08/06 15:39:08 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA) Collector.
2023/08/06 15:40:48 CLSRSC-4013: Successfully shut down Oracle Trace File Analyzer (TFA) Collector.
2023/08/06 15:40:51 CLSRSC-347: Successfully unlock /u01/app/19.0.0.0/grid
2023/08/06 15:40:53 CLSRSC-671: Pre-patch steps for patching GI home successfully completed.
crs ve bu node üzerinde çalışan her şey durduruldu patch için hazır durumdayız, GRID Home user ile aşağıdaki patchler geçilir;
/u01/app/19.0.0.0/grid/OPatch/opatch apply -oh /u01/app/19.0.0.0/grid -local /u01/PSU/35319490/35320081
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
/u01/app/19.0.0.0/grid/OPatch/opatch apply -oh /u01/app/19.0.0.0/grid -local /u01/PSU/35319490/35320149
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
/u01/app/19.0.0.0/grid/OPatch/opatch apply -oh /u01/app/19.0.0.0/grid -local /u01/PSU/35319490/33575402
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
/u01/app/19.0.0.0/grid/OPatch/opatch apply -oh /u01/app/19.0.0.0/grid -local /u01/PSU/35319490/35332537
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
/u01/app/19.0.0.0/grid/OPatch/opatch apply -oh /u01/app/19.0.0.0/grid -local /u01/PSU/35319490/35553096
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
GRID Patchleri geçildi duruma bakalım
$ /u01/app/19.0.0.0/grid/OPatch/opatch lspatches
35553096;TOMCAT RELEASE UPDATE 19.0.0.0.0 (35553096)
35332537;ACFS RELEASE UPDATE 19.20.0.0.0 (35332537)
33575402;DBWLM RELEASE UPDATE 19.0.0.0.0 (33575402)
35320149;OCW RELEASE UPDATE 19.20.0.0.0 (35320149)
35320081;Database Release Update : 19.20.0.0.230718 (35320081)
patch geçmeden önce Database Home tarafında durumumuz nedir bakalım;
$ ./opatch lspatches
29585399;OCW RELEASE UPDATE 19.3.0.0.0 (29585399)
29517242;Database Release Update : 19.3.0.0.190416 (29517242)
DATABASE Patchlerini geçelim, bu işlemler DB home user (oracle) ile yapacağız;
/u01/PSU/35319490/35320149/custom/scripts/prepatch.sh -dbhome /u01/app/oracle/product/19.0.0.0/db
/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch apply -oh /u01/app/oracle/product/19.0.0.0/db -local /u01/PSU/35319490/35320081
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
/u01/app/oracle/product/19.0.0.0/db/OPatch/opatch apply -oh /u01/app/oracle/product/19.0.0.0/db -local /u01/PSU/35319490/35320149
--Sorulan sorulara y ile devam edilir herhangi bir hata durumunda rollback edilir
/u01/PSU/35319490/35320149/custom/scripts/postpatch.sh -dbhome /u01/app/oracle/product/19.0.0.0/db
--KONTROL
$ /u01/app/oracle/product/19.0.0.0/db/OPatch/opatch lspatches
35320149;OCW RELEASE UPDATE 19.20.0.0.0 (35320149)
35320081;Database Release Update : 19.20.0.0.230718 (35320081)
Tüm Patchler başarı ile geçildikten sonra root user ile;
/u01/app/19.0.0.0/grid/rdbms/install/rootadd_rdbms.sh
/u01/app/19.0.0.0/grid/crs/install/rootcrs.sh -postpatch
herşey yolunda ise postpatch, crs ve database açma işlemini yapacaktır, bu işlem 1 Node üzerinde tamamen bittikten sonra 2. Node için aynı adımlar tekrarlanır.
2. Node patch geçmeden önce oui-patch.xml dosyası kontrol edilir , eğer izinleri doğru değilse düzeltilir;
# ll /u01/app/19.0.0.0/grid/inventory/ContentsXML/oui-patch.xml
-rw-r-----. 1 oracle oinstall 271340 Aug 6 16:09 /u01/app/19.0.0.0/grid/inventory/ContentsXML/oui-patch.xml
# ll /u01/app/oracle/product/19.0.0.0/db/inventory/ContentsXML/oui-patch.xml
-rw-r-----. 1 oracle oinstall 259515 Aug 6 16:33 /u01/app/oracle/product/19.0.0.0/db/inventory/ContentsXML/oui-patch.xml
2. Node için;
$ ll /u01/app/19.0.0.0/grid/inventory/ContentsXML/oui-patch.xml
-rw-r-----. 1 oracle oinstall 17682 Oct 9 2021 /u01/app/19.0.0.0/grid/inventory/ContentsXML/oui-patch.xml
$ ll /u01/app/oracle/product/19.0.0.0/db/inventory/ContentsXML/oui-patch.xml
-rw-r-----. 1 oracle oinstall 16690 Oct 9 2021 /u01/app/oracle/product/19.0.0.0/db/inventory/ContentsXML/oui-patch.xml
bizde izinler doğru sahiplik doğru 2. Node için aynı adımlar uygulandı.
Tüm node larda işlem bittikten sonra;
“datapatch -verbose” ve utlrp çalıştırılır
cd $ORACLE_HOME/OPatch
./datapatch -verbose
cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> @utlrp.sql
Bir yanıt yazın