How to Patch Oracle 19c to Release 19.27 – A Complete
Step-by-Step Blog
🚀 Introduction
Keeping your Oracle environment up to date is essential —
not just for performance, but also for security and stability. Oracle regularly
releases patches, and today, I’ll walk you through the exact steps I
followed to patch my Oracle 19c database from version 19.26.0.0.0 to
19.27.0.0.0.
This isn’t just a technical dump. It’s a real-life,
step-by-step guide that includes everything you’ll need: downloads, checks,
patching, verification, and a few gotchas to watch out for.
⚠️ Note: Please don’t
blindly follow this on production systems. Always test first!
🔍 Why is Oracle Patching
Important?
- 🔐
Security – Patches protect your system from known vulnerabilities.
- 🐛
Bug Fixes – They fix software issues that might crash your app or
corrupt data.
- ⚙️
Performance – Some patches improve performance and stability.
- ✅
Compliance – Often required by industry standards and audits.
- 🆕
New Features – Occasionally, you’ll get useful improvements.
🧩 Types of Oracle Patches
Oracle releases a variety of patches:
- Critical
Patch Updates (CPUs) – Quarterly security-focused releases.
- Security
Alerts – Out-of-cycle security fixes.
- Patch
Set Updates (PSUs) – Bundles of fixes + past CPU patches.
- Interim
Patches – One-off patches for urgent issues.
- Bundle
Patches – Component-specific patch sets.
- Release
Updates (RUs) – Major rolling updates in 19c+ that include all of the
above.
📅 Next CPU release is
scheduled for July 15, 2025.
🧰 How to Apply Oracle
19.27 Patch – Full Walkthrough
Let’s dive into the actual process.
1. Download the Patch and OPatch Utility
- Log
in to Oracle Support
using your org credentials.
- Go
to Patches & Updates, search with document ID 2118136.2.
- Select
your platform: Oracle 19c → Non-RAC or RAC → April 2025 Patch.
- Choose
OS: e.g. Red Hat Linux x86_64.
- Download
the README file – this is your best friend.
- Download:
- Patch
file: p37642901_190000_Linux-x86-64.zip
- OPatch
utility: p6880880_190000_Linux-x86-64.zip
2. Check and Update OPatch
In the server:
[oracle@ocisoumya ~]$cd $ORACLE_HOME/OPatch [oracle@ocisoumya ~]$./opatch version |
✅ You need version 12.2.0.1.46
or higher.
If not:
[oracle@ocisoumya ~]$mv OPatch OPatch_backup1 [oracle@ocisoumya
~]$cp p6880880_190000_Linux-x86-64.zip $ORACLE_HOME [oracle@ocisoumya
~]$cd $ORACLE_HOME [oracle@ocisoumya
~]$ unzip p6880880_190000_Linux-x86-64.zip |
🔧 Optional: Update your .bash_profile
to run opatch globally:
[oracle@ocisoumya
~]vi /home/oracle/.bash_profile PATH=$ORACLE_HOME/OPatch:$PATH .
~/.bash_profile :wq |
3. Prepare the Patch Directory
[oracle@ocisoumya
~]mkdir /home/oracle/patch [oracle@ocisoumya
~] chmod -R 777 /home/oracle/patch |
Transfer both ZIP files (Patch + OPatch) to this directory
using WinSCP or similar.
4. Unzip the Patch
[oracle@ocisoumya
~]cd /home/oracle/patch [oracle@ocisoumya
~]unzip p37642901_190000_Linux-x86-64.zip [oracle@ocisoumya
~]cd 37642901 |
5. Run Pre-checks
Before applying the patch, check for conflicts:
[oracle@ocisoumya
~] ./opatch prereq CheckConflictAgainstOHWithDetail -ph ./ |
✅ If you see “Success”, you’re
good to go.
6. Stop Database and Listener
[oracle@ocisoumya
~]sqlplus / as sysdba SQL> shutdown
immediate SQL> exit [oracle@ocisoumya
~] lsnrctl stop |
Verify that all services are down.
7. Clean Up Inactive Patches (Optional but Recommended)
[oracle@ocisoumya
~]cd $ORACLE_HOME/OPatch [oracle@ocisoumya
~]./opatch util listOrderedInactivePatches [oracle@ocisoumya
~]./opatch util deleteInactivePatches |
8. Make Sure You Have Enough Space
You’ll need at least 12 GB free in /home.
[oracle@ocisoumya ~] df -h
9. Apply the Patch
[oracle@ocisoumya
~]cd /home/oracle/patch/37642901 [oracle@ocisoumya
~] ./opatch apply |
Watch for success messages during the patch process.
10. Run DataPatch
This registers the patch inside the database:
[oracle@ocisoumya
~]cd $ORACLE_HOME/OPatch [oracle@ocisoumya
~] ./datapatch -verbose |
11. Start Database and Verify Patch
[oracle@ocisoumya
~]sqlplus / as sysdba SQL>startup SQL> select
* from v$version; |
✅ You should see 19.27.0.0.0
listed in the output!
📌 Final Tips
- 🗂️
Always patch standby first in Data Guard setups.
- 💡
Never patch production first — test on a non-prod clone.
- 📝
Always read the README.
- 💬
Share this guide if it helped!
No comments:
Post a Comment