How to Patch Oracle Grid on OCI Exadata I hear you ask…
Patching Oracle Grid on OCI Exadata can be performed via OCI Console UI or via the dbaascli command line tool. In this blog post, we will look at how to perform the task of patching Oracle Grid on OCI using the dbaascli tool.
Personally, I prefer the dbaascli tool as I suspect many DBA types will as they are very comfortable on the Linux command line and sometimes prefer this to clicking on some buttons on a web UI.
Whether you choose to use the dbaascli tool detailed in this blog post or via the OCI Console both methods involve no downtime where each RAC node is patched individually enabling you to achieve rolling patching in Oracle RAC.
Firstly before any patching takes place we want to ensure we are using the latest version of dbaascli. We can do this by first finding out our current installed version, checking the latest version then choosing to upgrade dbaascli if we have found it not to be running the latest. All commands below are run as the root user.
Check the existing dbaascli version installed on the host/server.
rpm -qa|grep -i dbaastools
Find the latest available version of dbaascli
dbaascli admin showLatestStackVersion
Update to the latest version of dbaascli if you aren’t already running the latest version.
dbaascli admin updateStack
Now that we are using the latest version of dbaastools we can proceed and begin looking at applying the latest patch set to Oracle Grid Infrastructure. In my example, I am currently running Oracle Grid 19.8, therefore, these steps will detail Oracle 19c grid patching steps and will be looking to upgrade to the latest version which at the time of writing is 19.17 but the same steps are valid for all versions. Again all commands below are run as the root user.
Run Pre-checks to ensure your system is in a good place to apply the latest patch. Any issues highlighted by the pre-checks should be resolved before you continue and begin applying the patch.
dbaascli grid patch --targetVersion 188.8.131.52.0 --executePrereqs
Assuming pre-checks are OK we can apply the latest patch set, as mentioned previously as of writing the latest patch set is 184.108.40.206. All commands below are run as the root user.
dbaascli grid patch --targetVersion 220.127.116.11.0
Should you, unfortunately, encounter an issue and need to roll back you can do so by running the below command as the root Unix user.
dbaascli grid patch --targetVersion 18.104.22.168.0 --rollback
After patching has been completed we can check the version of Oracle Grid on Exadata by running OPatch as the grid Unix user. Running the below command as grid user should show the 22.214.171.124 patch applied.
That is all there is to it, as mentioned at the start of this post you can perform this task via the OCI Console UI, I prefer using the Unix command line as I feel it gives a better verbose output to view the progress of the patching and be able to make better estimates on the time left until patching is completed.
The dbaascli tool automates 99% of the process bar the initial kick-off. Oracle produces full documentation on how to use the dbaascli tool on Exadata here.
If you liked this post please see some of my others here.