Introduction
Patch 19.14 is now available on Oracle Database Appliance. It’s time to test it.
What’s new?
This version brings January’s PSU to database and grid homes with their bug fixes, as usual. It also brings latest 21.5 but only for DB Systems (21c being an innovation release). Don’t expect too many new features for this release (actually, I don’t see anything new), it’s much more a bundle of bug fixes and finally it’s what I like.
Most important new features were brought by previous 19.13: multi-user mode for odacli tasks and parameter repository for bare metal instances.
Which ODA is compatible with this 19.14?
ODA X8 is becoming quite old now but no X9 has been announced yet. So the X8 in its 3 flavors (S, M, HA) is compatible with this patch, so are X7, X6 and X5-2HA (probably one of the latest patch for this one).
Is this patch a cumulative one?
This 19.14 can be applied on top of 19.10 or later. If you’re using older version like 19.6 or 19.8, applying 19.10 is needed prior 19.14.
As usual, don’t hesitate to consider reimaging instead of patching if 3 or more patches are needed to reach 19.14.
Is there also a patch for my databases?
If you’re using 12.1, 12.2 or 19c, these databases can be patched. 11gR2 and 18c are no more supported on ODA, meaning that your databases will continue working but you should definitely consider an upgrade. If you choose to reimage to this latest version, you will not find any 18c or 11gR2 DB homes to deploy.
Download the patch and clone files
Download the patch and the corresponding clones to be able to apply the complete patch.
- 33702951 => the patch itself
- 30403673 => the GI clone needed for deploying new version (mandatory)
- 30403662 => the DB clone for deploying new version of 19c (if you use 19c databases)
- 27119402 => the DB clone for deploying new version of 12.2 (if you use 12.2 databases)
- 23494992 => the DB clone for deploying new version of 12.1 (if you use 12.1 databases)
Be sure to choose the very latest 19.14 when downloading the clones, download link will first propose older versions.
Prepare the patching
A pre-patch is now provided and needed before applying an ODA patch, but prior running it, please check these prerequisites:
- filesystems have 20% available free space (does not concern acfs volumes)
- additional rpms manually installed should be removed
- revert profile scripts to default’s one (concerns grid and oracle users)
- make sure you can afford longer than planned downtime, 4 hours being the bare minimum for patching and troubleshooting. 1 day is never too much
You can use odabr to backup your filesystems to snapshot or to nfs, or simply backup all your important files to a nfs share in case patching would fail.
Version precheck
Start to check current version on all components:
odacli describe-component | grep -v ^$
System Version
---------------
19.13.0.0.0
System node Name
---------------
dbi-oda-x8
Local System Version
---------------
19.13.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK 19.13.0.0.0 up-to-date
GI 19.13.0.0.211019 up-to-date
DB 19.13.0.0.211019 up-to-date
DCSCONTROLLER 19.13.0.0.0 up-to-date
DCSCLI 19.13.0.0.0 up-to-date
DCSAGENT 19.13.0.0.0 up-to-date
DCSADMIN 19.13.0.0.0 up-to-date
OS 7.9 up-to-date
ILOM 5.0.2.24.r141466 up-to-date
BIOS 52050300 up-to-date
SHARED CONTROLLER FIRMWARE VDV1RL04 up-to-date
LOCAL DISK FIRMWARE 1132 up-to-date
SHARED DISK FIRMWARE 1132 up-to-date
HMP 2.4.8.0.600 up-to-date
Once the patch will be registered in the ODA repository, the “Available Version” column will be fed with versions provided within the patch.
Patching from 19.13 will normally be easy.
Prepararing the patch files and updating the DCS tools
Copy the patch files on your ODA in a temp directory. Then unzip the files:
cd /opt/dbi/
for f in p*1914000*.zip; do unzip -n $f; done
Archive: p30403662_1914000_Linux-x86-64.zip
extracting: odacli-dcs-19.14.0.0.0-220215-DB-19.14.0.0.zip
Archive: p30403673_1914000_Linux-x86-64.zip
extracting: odacli-dcs-19.14.0.0.0-220215-GI-19.14.0.0.zip
Archive: p33702951_1914000_Linux-x86-64.zip
extracting: oda-sm-19.14.0.0.0-220215-server.zip
rm -rf p*1914000*.zip
Register the patch in the repository:
odacli update-repository -f /opt/dbi/oda-sm-19.14.0.0.0-220215-server.zip
odacli describe-component | grep -v ^$
System Version
---------------
19.13.0.0.0
System node Name
---------------
dbi-oda-x8
Local System Version
---------------
19.13.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK 19.13.0.0.0 19.14.0.0.0
GI 19.13.0.0.211019 19.14.0.0.220118
DB 19.13.0.0.211019 19.14.0.0.220118
DCSCONTROLLER 19.13.0.0.0 19.14.0.0.0
DCSCLI 19.13.0.0.0 19.14.0.0.0
DCSAGENT 19.13.0.0.0 19.14.0.0.0
DCSADMIN 19.13.0.0.0 19.14.0.0.0
OS 7.9 up-to-date
ILOM 5.0.2.24.r141466 up-to-date
BIOS 52050300 up-to-date
SHARED CONTROLLER FIRMWARE VDV1RL04 up-to-date
LOCAL DISK FIRMWARE 1132 up-to-date
SHARED DISK FIRMWARE 1132 up-to-date
HMP 2.4.8.0.600 up-to-date
Update the DCS tooling of your ODA:
odacli update-dcsadmin -v 19.14.0.0.0
sleep 30; odacli update-dcscomponents -v 19.14.0.0.0
odacli update-dcsagent -v 19.14.0.0.0
Note that updating the DCS components is not done through a job:
sleep 180; odacli list-jobs | head -n 3; odacli list-jobs | tail -n 4
ID Description Created Status
---------------------------------------- --------------------------------------------------------------------------- ----------------------------------- ----------
0526db5b-69cd-42c6-b8af-93d34c7c261f Repository Update March 1, 2022 9:31:20 AM CET Success
bdf6a313-2e0c-4359-adb6-0e7606c38735 DcsAdmin patching March 1, 2022 9:32:52 AM CET Success
b9905530-d1ad-41ec-9b52-94f62728d4b5 DcsAgent patching March 1, 2022 9:34:49 AM CET Success
Now you can register GI and DB clones:
odacli update-repository -f /opt/dbi/odacli-dcs-19.14.0.0.0-220215-GI-19.14.0.0.zip
sleep 50; odacli update-repository -f /opt/dbi/odacli-dcs-19.14.0.0.0-220215-DB-19.14.0.0.zip
sleep 50; odacli list-jobs | head -n 3; odacli list-jobs | tail -n 3
ID Description Created Status
---------------------------------------- --------------------------------------------------------------------------- ----------------------------------- ----------
d72451bf-c0da-42b8-8fd9-72d45af5aabc Repository Update March 1, 2022 9:39:00 AM CET Success
b94fcecc-549c-4011-b239-022a88aa68e2 Repository Update March 1, 2022 9:40:04 AM CET Success
odacli describe-component | grep -v ^$
System Version
---------------
19.14.0.0.0
System node Name
---------------
dbi-oda-x8
Local System Version
---------------
19.14.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK
19.13.0.0.0 19.14.0.0.0
GI
19.13.0.0.211019 19.14.0.0.220118
DB
19.13.0.0.211019 19.14.0.0.220118
DCSCONTROLLER
19.14.0.0.0 up-to-date
DCSCLI
19.14.0.0.0 up-to-date
DCSAGENT
19.14.0.0.0 up-to-date
DCSADMIN
19.14.0.0.0 up-to-date
OS
7.9 up-to-date
ILOM
5.0.2.24.r141466 up-to-date
BIOS
52050300 up-to-date
SHARED CONTROLLER FIRMWARE
VDV1RL04 up-to-date
LOCAL DISK FIRMWARE
1132 up-to-date
SHARED DISK FIRMWARE
1132 up-to-date
HMP
2.4.8.0.600 up-to-date
This update will be limited to Oracle software.
Pre-patching report
Let’s check if patching has the green light:
odacli create-prepatchreport -s -v 19.14.0.0.0
odacli describe-prepatchreport -i 71867a62-37aa-4b95-a841-893977038cca
Patch pre-check report
------------------------------------------------------------------------
Job ID: 71867a62-37aa-4b95-a841-893977038cca
Description: Patch pre-checks for [OS, ILOM, GI, ORACHKSERVER]
Status: SUCCESS
Created: March 1, 2022 9:52:45 AM CET
Result: All pre-checks succeeded
Node Name
---------------
dbi-oda-x8
Pre-Check Status Comments
------------------------------ -------- --------------------------------------
__OS__
Validate supported versions Success Validated minimum supported versions.
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is patch location available Success Patch location is available.
Verify OS patch Success Verified OS patch
Validate command execution Success Validated command execution
__ILOM__
Validate ILOM server reachable Success Successfully connected with ILOM
server using public IP and USB
interconnect
Validate supported versions Success Validated minimum supported versions.
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is patch location available Success Patch location is available.
Checking Ilom patch Version Success Successfully verified the versions
Patch location validation Success Successfully validated location
Validate command execution Success Validated command execution
__GI__
Validate GI metadata Success Successfully validated GI metadata
Validate supported GI versions Success Validated minimum supported versions.
Validate available space Success Validated free space under /u01
Is clusterware running Success Clusterware is running
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is system provisioned Success Verified system is provisioned
Validate ASM in online Success ASM is online
Validate kernel log level Success Successfully validated the OS log
level
Validate minimum agent version Success GI patching enabled in current
DCSAGENT version
Validate Central Inventory Success oraInventory validation passed
Validate patching locks Success Validated patching locks
Validate clones location exist Success Validated clones location
Validate DB start dependencies Success DBs START dependency check passed
Validate DB stop dependencies Success DBs STOP dependency check passed
Evaluate GI patching Success Successfully validated GI patching
Validate command execution Success Validated command execution
__ORACHK__
Running orachk Success Successfully ran Orachk
Validate command execution Success Validated command execution
Everything is OK to start patching.
Patching infrastructure and GI
Let’s start the update-server:
odacli update-server -v 19.14.0.0.0
odacli describe-job -i 8e77a48d-672e-4b81-a6dc-6e396c32e99c
Job details
----------------------------------------------------------------
ID: 8e77a48d-672e-4b81-a6dc-6e396c32e99c
Description: Server Patching
Status: Success
Created: March 1, 2022 10:11:30 AM CET
Message: Successfully patched GI with RHP
Task Name Start Time End Time Status
---------------------------------------- ----------------------------------- ----------------------------------- ----------
Validating GI user metadata March 1, 2022 10:11:42 AM CET March 1, 2022 10:11:42 AM CET Success
Validate ILOM server reachable March 1, 2022 10:11:42 AM CET March 1, 2022 10:11:42 AM CET Success
Configure export clones resource March 1, 2022 10:11:43 AM CET March 1, 2022 10:11:44 AM CET Success
Creating repositories using yum March 1, 2022 10:11:44 AM CET March 1, 2022 10:11:46 AM CET Success
Updating YumPluginVersionLock rpm March 1, 2022 10:11:46 AM CET March 1, 2022 10:11:47 AM CET Success
Applying OS Patches March 1, 2022 10:11:47 AM CET March 1, 2022 10:18:26 AM CET Success
Creating repositories using yum March 1, 2022 10:18:27 AM CET March 1, 2022 10:18:27 AM CET Success
Applying HMP Patches March 1, 2022 10:18:27 AM CET March 1, 2022 10:18:28 AM CET Success
Patch location validation March 1, 2022 10:18:28 AM CET March 1, 2022 10:18:28 AM CET Success
oda-hw-mgmt upgrade March 1, 2022 10:18:28 AM CET March 1, 2022 10:18:57 AM CET Success
OSS Patching March 1, 2022 10:18:57 AM CET March 1, 2022 10:18:57 AM CET Success
Applying Firmware Disk Patches March 1, 2022 10:18:57 AM CET March 1, 2022 10:19:01 AM CET Success
Applying Firmware Controller Patches March 1, 2022 10:19:01 AM CET March 1, 2022 10:19:05 AM CET Success
Checking Ilom patch Version March 1, 2022 10:19:05 AM CET March 1, 2022 10:19:05 AM CET Success
Patch location validation March 1, 2022 10:19:05 AM CET March 1, 2022 10:19:05 AM CET Success
Save password in Wallet March 1, 2022 10:19:05 AM CET March 1, 2022 10:19:05 AM CET Success
Disabling IPMI v2 March 1, 2022 10:19:06 AM CET March 1, 2022 10:19:06 AM CET Success
Apply Ilom patch March 1, 2022 10:19:06 AM CET March 1, 2022 10:19:06 AM CET Success
Copying Flash Bios to Temp location March 1, 2022 10:19:06 AM CET March 1, 2022 10:19:06 AM CET Success
Starting the clusterware March 1, 2022 10:19:06 AM CET March 1, 2022 10:20:48 AM CET Success
registering image March 1, 2022 10:20:49 AM CET March 1, 2022 10:20:49 AM CET Success
registering working copy March 1, 2022 10:20:49 AM CET March 1, 2022 10:20:49 AM CET Success
registering image March 1, 2022 10:20:49 AM CET March 1, 2022 10:20:49 AM CET Success
Creating GI home directories March 1, 2022 10:20:49 AM CET March 1, 2022 10:20:49 AM CET Success
Extract GI clone March 1, 2022 10:20:49 AM CET March 1, 2022 10:20:49 AM CET Success
Provisioning Software Only GI with RHP March 1, 2022 10:20:49 AM CET March 1, 2022 10:20:49 AM CET Success
Patch GI with RHP March 1, 2022 10:20:49 AM CET March 1, 2022 10:30:06 AM CET Success
Updating GIHome version March 1, 2022 10:30:06 AM CET March 1, 2022 10:30:09 AM CET Success
Validate GI availability March 1, 2022 10:30:12 AM CET March 1, 2022 10:30:12 AM CET Success
Patch KVM CRS type March 1, 2022 10:30:12 AM CET March 1, 2022 10:30:13 AM CET Success
Update System version March 1, 2022 10:30:13 AM CET March 1, 2022 10:30:13 AM CET Success
Cleanup JRE Home March 1, 2022 10:30:13 AM CET March 1, 2022 10:30:13 AM CET Success
Add SYSNAME in Env March 1, 2022 10:30:13 AM CET March 1, 2022 10:30:13 AM CET Success
Starting the clusterware March 1, 2022 10:30:13 AM CET March 1, 2022 10:30:13 AM CET Success
Setting ACL for disk groups March 1, 2022 10:30:13 AM CET March 1, 2022 10:30:17 AM CET Success
Update lvm.conf file March 1, 2022 10:31:34 AM CET March 1, 2022 10:31:34 AM CET Success
Update previous workarounds March 1, 2022 10:31:34 AM CET March 1, 2022 10:31:34 AM CET Success
preRebootNode Actions March 1, 2022 10:31:34 AM CET March 1, 2022 10:36:07 AM CET Success
Reboot Ilom March 1, 2022 10:36:07 AM CET March 1, 2022 10:36:07 AM CET Success
Server reboots 5 minutes after the patch ends. On my X8-2M this server patching lasted 25 minutes.
Let’s check the component’s versions now:
odacli describe-component | grep -v ^$
System Version
---------------
19.14.0.0.0
System node Name
---------------
dbi-oda-x8
Local System Version
---------------
19.14.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK
19.14.0.0.0 up-to-date
GI
19.14.0.0.220118 up-to-date
DB
19.13.0.0.211019 19.14.0.0.220118
DCSCONTROLLER
19.14.0.0.0 up-to-date
DCSCLI
19.14.0.0.0 up-to-date
DCSAGENT
19.14.0.0.0 up-to-date
DCSADMIN
19.14.0.0.0 up-to-date
OS
7.9 up-to-date
ILOM
5.0.2.24.r141466 up-to-date
BIOS
52050300 up-to-date
SHARED CONTROLLER FIRMWARE
VDV1RL04 up-to-date
LOCAL DISK FIRMWARE
1132 up-to-date
SHARED DISK FIRMWARE
1132 up-to-date
HMP
2.4.8.0.600 up-to-date
This looks fine.
Patching the storage
Patching the storage is only needed for older ODAs/patch levels. In case you need to apply a patch on the storage it’s easy: there is a pre-patch, and then the patch:
odacli create-prepatchreport -st -v 19.14.0.0.0
odacli update-storage -v 19.14.0.0.0
For HA ODAs using RAC, patching can be done in a rolling fashion:
odacli update-storage -v 19.14.0.0.0 --rolling
I never encountered troubles during storage patching, so it should be fine.
Patching the DB homes
Since 19.11, DB homes are created on an acfs filesystem. If you come from 19.10, you will need to configure this filesystem:
odacli configure-dbhome-storage -dg DATA
Time for patching the DB homes depends on the number of DB homes and number of databases. In this example, only one DB home is deployed:
odacli list-dbhomes
ID Name DB Version Home Location Status
---------------------------------------- -------------------- ---------------------------------------- --------------------------------------------- ----------
5e7a146a-c18d-427b-a206-e532ec9907cf OraDB19000_home1 19.13.0.0.211019 /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 CONFIGURED
A prepatching is also needed here:
odacli create-prepatchreport -d -i 5e7a146a-c18d-427b-a206-e532ec9907cf -v 19.14.0.0.0
odacli describe-prepatchreport -i d7aa02c8-cd13-4729-891d-ea52fade3784
Patch pre-check report
------------------------------------------------------------------------
Job ID: d7aa02c8-cd13-4729-891d-ea52fade3784
Description: Patch pre-checks for [DB, ORACHKDB]: DbHome is OraDB19000_home1
Status: FAILED
Created: March 1, 2022 10:50:55 AM CET
Result: One or more pre-checks failed for [ORACHK]
Node Name
---------------
dbi-oda-x8
Pre-Check Status Comments
------------------------------ -------- --------------------------------------
__DB__
Validate DB Home ID Success Validated DB Home ID:
5e7a146a-c18d-427b-a206-e532ec9907cf
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is system provisioned Success Verified system is provisioned
Validate minimum agent version Success Validated minimum agent version
Is GI upgraded Success Validated GI is upgraded
Validate available space for Success Validated free space required under
db /u01/app/odaorahome
Validate dbHomesOnACFS Success User has configured diskgroup for
configured Database homes on ACFS
Validate Oracle base Success Successfully validated Oracle Base
Is DB clone available Success Successfully validated clone file
exists
Evaluate DBHome patching with Success Successfully validated updating
RHP dbhome with RHP
Validate command execution Success Validated command execution
__ORACHK__
Running orachk Failed Orachk validation failed: .
Validate command execution Success Validated command execution
Verify the Fast Recovery Area Failed AHF-2929: FRA space management
(FRA) has reclaimable space problem file types are present
without an RMAN backup completion
within the last 7 days
I don’t care about Orachk recommendations on my database as this is a test system. I will apply the patch on this DB home:
odacli update-dbhome -i 5e7a146a-c18d-427b-a206-e532ec9907cf -v 19.14.0.0.0 -f
DCS-10802:Insufficient disk space on file system: /u01/app/odaorahome. Expected free space: 16GB, available space: 5GB
Default acfs filesystem size for db homes is quite small, and it does not extent automatically, so let’s increase its size:
odacli list-dbhome-storages
=============================================================================================================
ID Node Description Disk Group Volume Size(GB) Status
-------------------------------------- ---- -------------------- ---------- ----------- ---------- ----------
9f091fa4-a8de-4c02-9504-4c889c324598 0 ORACLE_HOME DATA orahome_sh 30 CONFIGURED
09747e05-d7d4-4f5d-94ab-b1eb7c730c74 0 ORACLE_BASE DATA odabase_n0 10 CONFIGURED
=============================================================================================================
odacli modify-dbhome-storage -i 9f091fa4-a8de-4c02-9504-4c889c324598 -s 60
odacli list-dbhome-storages
=============================================================================================================
ID Node Description Disk Group Volume Size(GB) Status
-------------------------------------- ---- -------------------- ---------- ----------- ---------- ----------
9f091fa4-a8de-4c02-9504-4c889c324598 0 ORACLE_HOME DATA orahome_sh 60 CONFIGURED
09747e05-d7d4-4f5d-94ab-b1eb7c730c74 0 ORACLE_BASE DATA odabase_n0 10 CONFIGURED
=============================================================================================================
odacli update-dbhome -i 5e7a146a-c18d-427b-a206-e532ec9907cf -v 19.14.0.0.0 -f
odacli describe-job -i 9293caea-6521-4e62-991d-cf66be1e10cf
Job details
----------------------------------------------------------------
ID: 9293caea-6521-4e62-991d-cf66be1e10cf
Description: DB Home Patching: Home Id is 5e7a146a-c18d-427b-a206-e532ec9907cf
Status: Success
Created: March 1, 2022 11:09:06 AM CET
Message:
Task Name Start Time End Time Status
---------------------------------------- ----------------------------------- ----------------------------------- ----------
Adding USER SSH_EQUIVALENCE March 1, 2022 11:09:12 AM CET March 1, 2022 11:09:12 AM CET Success
Adding USER SSH_EQUIVALENCE March 1, 2022 11:09:12 AM CET March 1, 2022 11:09:12 AM CET Success
Adding USER SSH_EQUIVALENCE March 1, 2022 11:09:12 AM CET March 1, 2022 11:09:13 AM CET Success
Creating wallet for DB Client March 1, 2022 11:09:49 AM CET March 1, 2022 11:09:49 AM CET Success
Patch databases by RHP March 1, 2022 11:09:49 AM CET March 1, 2022 11:13:06 AM CET Success
updating database metadata March 1, 2022 11:13:06 AM CET March 1, 2022 11:13:06 AM CET Success
Set log_archive_dest for Database March 1, 2022 11:13:06 AM CET March 1, 2022 11:13:09 AM CET Success
Patch databases by RHP March 1, 2022 11:13:09 AM CET March 1, 2022 11:17:19 AM CET Success
updating database metadata March 1, 2022 11:17:19 AM CET March 1, 2022 11:17:19 AM CET Success
Set log_archive_dest for Database March 1, 2022 11:17:19 AM CET March 1, 2022 11:17:22 AM CET Success
Patch databases by RHP March 1, 2022 11:17:22 AM CET March 1, 2022 11:22:08 AM CET Success
updating database metadata March 1, 2022 11:22:08 AM CET March 1, 2022 11:22:08 AM CET Success
Set log_archive_dest for Database March 1, 2022 11:22:08 AM CET March 1, 2022 11:22:10 AM CET Success
Update System version March 1, 2022 11:22:10 AM CET March 1, 2022 11:22:10 AM CET Success
TDE parameter update March 1, 2022 11:23:02 AM CET March 1, 2022 11:23:02 AM CET Success
A new DB home has been created and my databases are now linked to this new one:
odacli list-dbhomes
ID Name DB Version Home Location Status
---------------------------------------- -------------------- ---------------------------------------- --------------------------------------------- ----------
5e7a146a-c18d-427b-a206-e532ec9907cf OraDB19000_home1 19.13.0.0.211019 /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_1 CONFIGURED
530ce9aa-195c-4b45-98d4-5ab03855d47d OraDB19000_home2 19.14.0.0.220118 /u01/app/odaorahome/oracle/product/19.0.0.0/dbhome_2 CONFIGURED
odacli list-databases
ID DB Name DB Type DB Version CDB Class Shape Storage Status DbHomeID
---------------------------------------- ---------- -------- -------------------- ---------- -------- -------- ---------- ------------ ----------------------------------------
42656d90-e18e-4325-a69a-13d3a6b58710 DBITST SI 19.14.0.0.220118 true OLTP odb1 ASM CONFIGURED 530ce9aa-195c-4b45-98d4-5ab03855d47d
a2193c80-d004-4295-847e-ec8277952bd7 DBTAG38 SI 19.14.0.0.220118 false OLTP odb1 ASM CONFIGURED 530ce9aa-195c-4b45-98d4-5ab03855d47d
e7f9bf31-d185-4159-b579-181c75d6835b CDBCBL SI 19.14.0.0.220118 true OLTP odb1 ACFS CONFIGURED 530ce9aa-195c-4b45-98d4-5ab03855d47d
The old DB home can now be removed safely:
odacli delete-dbhome -i 5e7a146a-c18d-427b-a206-e532ec9907cf
If your databases were created with 19.11 or earlier versions, a parameter needs to be changed:
su - oracle
. oraenv <<< DBITST
sqlplus / as sysdba
alter system set "_enable_numa_support"=true scope=spfile sid='*';
exit
srvctl stop database -d DBITST_SITE1
srvctl start database -d DBITST_SITE1
This only concerns multi-processor ODAs (not S ones) and it will force an instance to use local memory modules, those associated to the processor where the instance is running. This should improve overall performance.
Patching the other DB homes is done the same way.
Remember that patching standby databases may raise an error, as datapatch cannot be applied on a mounted or read only database.
I would recommand to check on each primary the patch level after patching each db home:
su – oracle
. oraenv <<< DBITST
sqlplus / as sysdba
set serverout on
exec dbms_qopatch.get_sqlpatch_status;
Patch Id : 33192694
Action : APPLY
Action Time : 10-NOV-2021 06:45:49
Description : OJVM RELEASE UPDATE: 19.13.0.0.211019 (33192694)
Logfile :
/u01/app/oracle/cfgtoollogs/sqlpatch/33192694/24421575/33192694_apply_G19794_CDB
ROOT_2021Nov10_06_29_39.log
Status : SUCCESS
Patch Id : 33192793
Action : APPLY
Action Time : 10-NOV-2021 06:45:49
Description : Database Release Update : 19.13.0.0.211019 (33192793)
Logfile :
/u01/app/oracle/cfgtoollogs/sqlpatch/33192793/24462514/33192793_apply_G19794_CDB
ROOT_2021Nov10_06_29_39.log
Status : SUCCESS
Patch Id : 33192694
Action : ROLLBACK
Action Time : 01-MAR-2022 11:17:15
Description : OJVM RELEASE UPDATE: 19.13.0.0.211019 (33192694)
Logfile :
/u01/app/odaorabase/oracle/cfgtoollogs/sqlpatch/33192694/24421575/33192694_rollb
ack_DBITST_CDBROOT_2022Mar01_11_15_15.log
Status : SUCCESS
Patch Id : 33561310
Action : APPLY
Action Time : 01-MAR-2022 11:17:16
Description : OJVM RELEASE UPDATE: 19.14.0.0.220118 (33561310)
Logfile :
/u01/app/odaorabase/oracle/cfgtoollogs/sqlpatch/33561310/24538862/33561310_apply
_DBITST_CDBROOT_2022Mar01_11_15_43.log
Status : SUCCESS
Patch Id : 33515361
Action : APPLY
Action Time : 01-MAR-2022 11:17:16
Description : Database Release Update : 19.14.0.0.220118 (33515361)
Logfile :
/u01/app/odaorabase/oracle/cfgtoollogs/sqlpatch/33515361/24589353/33515361_apply
_DBITST_CDBROOT_2022Mar01_11_15_43.log
Status : SUCCESS
PL/SQL procedure successfully completed.
exit
Final checks
Let’s get the final versions:
odacli describe-component | grep -v ^$
System Version
---------------
19.14.0.0.0
System node Name
---------------
dbi-oda-x8
Local System Version
---------------
19.14.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK
19.14.0.0.0 up-to-date
GI
19.14.0.0.220118 up-to-date
DB
19.14.0.0.220118 up-to-date
DCSCONTROLLER
19.14.0.0.0 up-to-date
DCSCLI
19.14.0.0.0 up-to-date
DCSAGENT
19.14.0.0.0 up-to-date
DCSADMIN
19.14.0.0.0 up-to-date
OS
7.9 up-to-date
ILOM
5.0.2.24.r141466 up-to-date
BIOS
52050300 up-to-date
SHARED CONTROLLER FIRMWARE
VDV1RL04 up-to-date
LOCAL DISK FIRMWARE
1132 up-to-date
SHARED DISK FIRMWARE
1132 up-to-date
HMP
2.4.8.0.600 up-to-date
Everything is fine.
Cleanse the old patches
The old patches will never be used again, so don’t forget to remove previous patch files from the repository if your ODA has already been patched:
odacli cleanup-patchrepo -cl -comp db,gi -v 19.13.0.0.0
Put back your own settings
- Once everything is OK, don’t forget to put back your settings:
- add your additional rpms manually if needed
- put back your profile scripts for grid and oracle users
- …
Patching an existing DB System
If you use DB Systems on your ODA, meaning that some of your databases are running in dedicated VMs, you will need to apply the patch inside each DB System.
odacli list-dbsystems
Name Shape Cores Memory GI version DB version Status Created Updated
-------------------- ---------- ----- ---------- ------------------ ------------------ --------------- ----------------------- -----------------------
srvdb47 odb2 2 16.00 GB 19.13.0.0.211019 19.13.0.0.211019 CONFIGURED 2022-02-22 17:40:42 CET 2022-02-22 18:13:44 CET
srvdb49 odb2 2 16.00 GB 19.13.0.0.211019 19.13.0.0.211019 CONFIGURED 2022-02-22 16:27:54 CET 2022-02-22 16:58:43 CET
srvdb48 odb2 2 16.00 GB 19.13.0.0.211019 19.13.0.0.211019 CONFIGURED 2022-02-22 15:53:25 CET 2022-02-22 16:23:22 CET
Let’s do a describe component in one of the DB systems:
ssh srvdb48
odacli describe-component | grep -v ^$
System Version
---------------
19.13.0.0.0
System node Name
---------------
srvdb48
Local System Version
---------------
19.13.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK 19.13.0.0.0 19.14.0.0.0
GI 19.13.0.0.211019 19.14.0.0.220118
DB 19.13.0.0.211019 19.14.0.0.220118
DCSCONTROLLER 19.13.0.0.0 19.14.0.0.0
DCSCLI 19.13.0.0.0 19.14.0.0.0
DCSAGENT 19.13.0.0.0 19.14.0.0.0
DCSADMIN 19.13.0.0.0 19.14.0.0.0
OS 7.9 up-to-date
Patching method is the same as bare metal:
odacli update-dcsadmin -v 19.14.0.0.0
sleep 30; odacli update-dcscomponents -v 19.14.0.0.0
odacli update-dcsagent -v 19.14.0.0.0
sleep 180; odacli create-prepatchreport -s -v 19.14.0.0.0
odacli describe-prepatchreport -i 605cb646-9d39-4db4-bdcf-aca7f813942d
Patch pre-check report
------------------------------------------------------------------------
Job ID: 605cb646-9d39-4db4-bdcf-aca7f813942d
Description: Patch pre-checks for [OS, GI, ORACHKSERVER]
Status: FAILED
Created: March 1, 2022 11:48:18 AM CET
Result: One or more pre-checks failed for [GI, ORACHK]
Node Name
---------------
srvdb48
Pre-Check Status Comments
------------------------------ -------- --------------------------------------
__OS__
Validate supported versions Success Validated minimum supported versions.
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is patch location available Success Patch location is available.
Verify OS patch Success Verified OS patch
Validate command execution Success Validated command execution
__GI__
Validate GI metadata Success Successfully validated GI metadata
Validate supported GI versions Success Validated minimum supported versions.
Validate available space Success Validated free space under /u01
Is clusterware running Success Clusterware is running
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is system provisioned Success Verified system is provisioned
Validate BM versions Failed
Validate kernel log level Aborted Internal error encountered
Validate minimum agent version Aborted Internal error encountered
Validate Central Inventory Aborted Internal error encountered
Validate patching locks Aborted Internal error encountered
Validate clones location exist Aborted Internal error encountered
Evaluate GI patching Aborted Internal error encountered
Validate command execution Aborted Internal error encountered
__ORACHK__
Running orachk Aborted Internal error encountered
Validate command execution Aborted Internal error encountered
There is a bug with the repository mounted from the bare metal server, as described in the documentation:
cp /opt/oracle/oak/pkgrepos/System/VERSION /opt/oracle/oak/conf/VERSION
umount /opt/oracle/oak/pkgrepos
mount 192.168.17.2:/opt/oracle/oak/pkgrepos /opt/oracle/oak/pkgrepos
odacli create-prepatchreport -s -v 19.14.0.0.0
odacli describe-prepatchreport -i cfb24814-5c77-4ccb-9cee-eda971467a57
Patch pre-check report
------------------------------------------------------------------------
Job ID: cfb24814-5c77-4ccb-9cee-eda971467a57
Description: Patch pre-checks for [OS, GI, ORACHKSERVER]
Status: SUCCESS
Created: March 1, 2022 3:21:59 PM CET
Result: All pre-checks succeeded
Node Name
---------------
srvdb48
Pre-Check Status Comments
------------------------------ -------- --------------------------------------
__OS__
Validate supported versions Success Validated minimum supported versions.
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is patch location available Success Patch location is available.
Verify OS patch Success Verified OS patch
Validate command execution Success Validated command execution
__GI__
Validate GI metadata Success Successfully validated GI metadata
Validate supported GI versions Success Validated minimum supported versions.
Validate available space Success Validated free space under /u01
Is clusterware running Success Clusterware is running
Validate patching tag Success Validated patching tag: 19.14.0.0.0.
Is system provisioned Success Verified system is provisioned
Validate BM versions Success Validated BM server components
versions
Validate kernel log level Success Successfully validated the OS log
level
Validate minimum agent version Success GI patching enabled in current
DCSAGENT version
Validate Central Inventory Success oraInventory validation passed
Validate patching locks Success Validated patching locks
Validate clones location exist Success Validated clones location
Evaluate GI patching Success Successfully validated GI patching
Validate command execution Success Validated command execution
__ORACHK__
Running orachk Success Successfully ran Orachk
Validate command execution Success Validated command execution
odacli update-server -v 19.14.0.0.0
odacli create-prepatchreport -d -i d8e0d75d-a810-4b89-805e-a4de5d646ec4 -v 19.14.0.0.0
odacli describe-prepatchreport -i 15065354-6a5d-411e-ad69-5991fc560428
odacli update-dbhome -i d8e0d75d-a810-4b89-805e-a4de5d646ec4 -v 19.14.0.0.0
odacli delete-dbhome -i d8e0d75d-a810-4b89-805e-a4de5d646ec4
odacli describe-component | grep -v ^$
System Version
---------------
19.14.0.0.0
System node Name
---------------
srvdb48
Local System Version
---------------
19.14.0.0.0
Component Installed Version Available Version
---------------------------------------- -------------------- --------------------
OAK
19.14.0.0.0 up-to-date
GI
19.14.0.0.220118 up-to-date
DB
19.14.0.0.220118 up-to-date
DCSCONTROLLER
19.14.0.0.0 up-to-date
DCSCLI
19.14.0.0.0 up-to-date
DCSAGENT
19.14.0.0.0 up-to-date
DCSADMIN
19.14.0.0.0 up-to-date
OS
7.9 up-to-date
Remember that using multiple DB Systems is nice but it’s much more work when you need to patch.
Conclusion
This release doesn’t bring any new feature and thus is easy to apply if you come from 19.10 or later versions. So don’t hesitate because this patch packs the latest bug and security fixes.