Wednesday, May 6, 2026

Oracle 19c to Oracle 26ai Database Upgrade Using DBUA – Step-by-Step Real-World Guide

 

19c to 26ai

 

 

 

 

Upgrading an Oracle Database is one of those tasks that every DBA respects—and sometimes fears. With Oracle introducing Oracle 26ai (AI DATABASE), many teams running stable Oracle 19c environments are now planning their upgrade path.

Data Management

In this blog, I’ll walk you through a real Oracle 19c to Oracle 26ai database upgrade using DBUA (Database Upgrade Assistant), based on an actual upgrade execution. This guide is simple, practical, and easy to follow, even if you’re performing a major version upgrade for the first time. 


Why Upgrade from Oracle 19c to Oracle 26ai?

Oracle 19c is a Long-Term Support (LTS) release and still widely used. However, Oracle 26ai brings significant enhancements:

Data Management

§  Built-in AI-driven optimizations

§  Improved CDB/PDB architecture

§  Better performance and memory management

§  Enhanced security defaults

§  Long-term roadmap alignment

If your organization is planning future workloads, analytics, or AI-driven features, Oracle 26ai is the next logical step.


Why Use DBUA for the Upgrade?

Oracle provides multiple upgrade methods:

§  Manual upgrade scripts

§  AutoUpgrade

§  DBUA (Database Upgrade Assistant)

For this upgrade, DBUA was chosen because:

§  GUI-driven and easy to follow

§  Built-in prerequisite checks

§  Automatic component upgrades

§  Integrated rollback options

§  Clear progress and logging

⚠️ Note: Oracle has announced that DBUA is deprecated starting from Oracle 23c, but it is still available and functional in 26ai for now.


🎯 Objective

This SOP provides a step-by-step procedure to upgrade an Oracle Database 19c database to Oracle AI Database 26ai using Oracle Database Upgrade Assistant (DBUA).

This document is based on a real-world upgrade execution and includes:

  • Pre-upgrade preparation
  • DBUA upgrade steps
  • Validation procedures
  • Rollback strategy
  • Post-upgrade checks
  • Best practices

Parameter

Value

Database Version

Oracle 19c

Database Type

CDB with PDB

CDB Name

test

PDB Name

ORCLPDB

📋 Pre-Upgrade Checklist

✅ Verify Database Health

SELECT name, open_mode, database_role FROM v$database;


✅ Verify Invalid Objects

SELECT owner, object_name, object_type
FROM
dba_objects
WHERE
status='INVALID';


✅ Check Tablespace Usage

SELECT tablespace_name,
       used_percent
FROM
dba_tablespace_usage_metrics;


✅ Verify Backup Availability

Ensure:

  • RMAN backup completed successfully
  • Recovery tested
  • Archive logs available

✅ Check COMPATIBLE Parameter

SHOW PARAMETER compatible;


✅ Gather Dictionary Statistics

EXEC DBMS_STATS.GATHER_DICTIONARY_STATS;


💾 Recommended Recovery Strategy

Use Guaranteed Restore Point

Highly recommended for rollback safety.

CREATE RESTORE POINT before_upgrade GUARANTEE FLASHBACK DATABASE;

Benefits:

  • Fast rollback
  • Avoid full restore
  • Lower downtime risk

Step 1: Selecting the Source Database

DBUA automatically detects databases running on the server.
In this case, the Oracle 19c CDB was selected along with SYS credentials.

 

export ORACLE_HOME=/u01/app/oracle/product/23.26.0.0/dbhome_1

export PATH=$ORACLE_HOME/bin:$PATH

 

📸 Step 2: Select Source Database

DBUA automatically detects databases.

Select:

  • CDB: test
  • SYS credentials

DBUA validates:

  • Connectivity
  • Metadata
  • Upgrade readiness

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-143152.png

DBUA connects to the database, validates access, and prepares metadata for upgrade analysis.


📸 Step 3: Select PDB

DBUA displays available PDBs.

Select:

  • ORCLPDB

Verify:

  • Status = NORMAL
  • Open Mode = READ WRITE

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-143214.png

§  ORCLPDB was selected

§  Status: NORMAL

§  Open Mode: READ WRITE

This confirms that the PDB is healthy and ready for upgrade.


🔍 Step 4: Run Prerequisite Checks

DBUA automatically performs:

  • Parameter validation
  • Timezone checks
  • Dictionary checks
  • Unified auditing checks

Common warnings:

  • SPFILE parameter warnings
  • Timezone advisory
  • Statistics recommendation

⚠️ Important:
Warnings are not always blockers.

Review carefully before proceeding.

 

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-143225.png

Common warnings seen:

§  Initialization parameters not recorded in SPFILE

§  Unified Auditing changes

§  Recommendations to gather dictionary statistics

§  Timezone data upgrade advisory

✔️ These were warnings, not blockers
✔️ Some were auto-fixable, others manual

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-143423.png

💡 Tip: Always review warnings carefully. Ignoring them blindly can cause post-upgrade performance issues.


Step 5: Select Upgrade Options

Enable recommended options:

Option

Recommended

Parallel Upgrade

Recompile Invalid Objects

Upgrade Timezone Data

Benefits:

  • Reduced downtime
  • Better post-upgrade stability

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-143544.png


🔒 Step 6: Configure Recovery Option

Choose:

✅ Flashback with Guaranteed Restore Point

Reason:

  • Fast rollback
  • Safe recovery strategy
  • Recommended for production

 

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-143600.png

 


🌐 Step 7: Network Configuration

DBUA detects existing listener.

Example:

Parameter

Value

Listener

LISTENER

Port

1521

Usually no changes required.

 

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-144629.png


 

📊 Step 8: Management Configuration

Optional:

  • Enterprise Manager registration

Can be skipped if external monitoring exists.

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-144639.png


📋 Step 9: Review Upgrade Summary

Review carefully:

  • Source version
  • Target version
  • PDB selection
  • Upgrade options
  • Oracle homes

⚠️ Final verification point before execution.

 

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-144653.png


🚀 Step 10: Start Upgrade

DBUA performs:

  • CDB Root upgrade
  • PDB$SEED upgrade
  • PDB upgrade
  • Component upgrades

Components upgraded:

  • Oracle Server
  • JVM
  • Oracle Text
  • Database Vault
  • OLAP
  • Oracle Multimedia

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-02-145543.png

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-03-103709.png


Final Results: Upgrade Completed Successfully 🎉

The upgrade finished with zero errors.

https://dbainsight.com/wp-content/uploads/2026/02/Screenshot-2026-02-03-113703.png

Step 11: Verify Upgrade Completion

Expected final status:

Component

Status

Database

SUCCESS

PDB

NORMAL

Upgrade

Completed

 


🧪 Post-Upgrade Validation

✅ Verify Database Version

SELECT * FROM v$version;


✅ Verify PDB Status

SHOW PDBS;


✅ Check Invalid Objects

SELECT owner, object_name
FROM
dba_objects
WHERE
status='INVALID';


✅ Run utlrp.sql

@?/rdbms/admin/utlrp.sql


✅ Gather Fixed Object Statistics

EXEC DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;


✅ Review Alert Log

tail -100f alert_<SID>.log


🔄 Rollback Procedure

If upgrade fails:

Flashback Database

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;

FLASHBACK DATABASE TO RESTORE POINT before_upgrade;

ALTER
DATABASE OPEN RESETLOGS;


⚠️ Common Issues & Fixes

Issue

Solution

Invalid objects

Run utlrp.sql

Listener issue

Restart listener

PDB not open

Open manually

Timezone mismatch

Run timezone upgrade


🛡️ Best Practices

✅ Before Upgrade

  • Full RMAN backup
  • Validate restore
  • Check space availability
  • Disable unnecessary jobs

✅ During Upgrade

  • Monitor alert log
  • Avoid application activity
  • Monitor CPU/memory

✅ After Upgrade

  • Gather statistics
  • Test applications
  • Validate backups
  • Monitor performance

📊 Recommended Monitoring Queries

Check Upgrade Status

SELECT comp_name, status, version
FROM
dba_registry;


Check PDB Open Modes

SELECT name, open_mode
FROM
v$pdbs;


🎯 Key Takeaways

✅ DBUA simplifies major upgrades
✅ Flashback restore points reduce risk
✅ Parallel upgrade minimizes downtime
✅ Prechecks are critical
✅ Always validate post-upgrade health


🏁 Conclusion

Using Oracle Database Upgrade Assistant for upgrading from Oracle Database 19c to Oracle AI Database 26ai provides:

  • Structured workflow
  • Built-in validation
  • Reduced operational risk
  • Easier rollback handling

Proper planning and validation are the keys to a successful production upgrade.

 

No comments:

Post a Comment