Universal Installer   «Prev  Next»

Lesson 5 Upgrade to Oracle 23c / 23ai
Objective Plan and execute a modern upgrade from Oracle 19c to Oracle 23c/23ai using AutoUpgrade, multitenant best practices, and cloud-aware methods.

Upgrading to Oracle 23c / 23ai (Primary Path: 19c → 23c/23ai)

Upgrading Oracle Database from 19c to 23c or 23ai via the primary path migration method primarily relies on the Oracle AutoUpgrade Tool, which automates the process for efficiency and reliability. This approach is suitable for direct upgrades from Oracle Database 19c (version 19.3 or higher) and supports both in-place upgrades and minimal-downtime strategies. Before starting, ensure prerequisites are met: install the Oracle Database 23c software in a new Oracle Home and apply the latest Release Update (RU); verify hardware, OS, and endianness compatibility between source and target environments; and confirm the source database uses a compatible character set like AL32UTF8, especially for multitenant architectures. Non-CDB databases must be converted to pluggable databases (PDBs) within a container database (CDB), a requirement for 21c and later releases, which AutoUpgrade handles automatically. This path minimizes manual intervention and supports parallel execution for faster completion.
The core steps begin with preparing the AutoUpgrade configuration file, a simple JSON or properties file that specifies the source database details, target Oracle Home, upgrade options, and any custom parameters like file relocation for rollback. Once configured, execute AutoUpgrade with a single command, such as

java -jar autoupgrade.jar -config config.properties -mode analyze
for a pre-upgrade check, followed by `-mode upgrade` for the actual migration. AutoUpgrade then analyzes the source, applies data dictionary fixups, performs the upgrade, converts non-CDBs to PDBs if needed, and runs post-upgrade validations. For CDBs with multiple PDBs, upgrade the entire container at once or use an "unplug-plug" method: unplug PDBs from the 19c CDB, plug them into a new 23c CDB, and upgrade individually. This tool is fully restartable and logs activities comprehensively for monitoring via its console.
Post-upgrade, review AutoUpgrade reports for any issues, perform thorough testing of applications and workloads, and apply any remaining configurations, such as enabling deprecated feature removals like traditional auditing, which is desupported in 23c. For Oracle Database 23ai—the AI-enhanced variant of 23c, the upgrade follows the identical primary path, but additional steps may involve validating and configuring AI Vector Search or other machine learning integrations after the migration. Leverage features like refreshable clones for zero-downtime upgrades by creating a background clone of the PDB, upgrading it separately, and switching over seamlessly. Always back up the source database and test in a non-production environment first to ensure a smooth transition to the enhanced capabilities of 23c/23ai.

Sanity Check & Legacy Content Review

Recommended Focus

Modern Upgrade Workflow (19c → 23c/23ai)

  1. Inventory & Readiness
    • Confirm source version/patch level, platform, character set, TDE usage, and whether you are Non-CDB or already CDB/PDB.
    • Document SLOs (RTO/RPO), maintenance windows, and rollback options.
  2. Choose the Upgrade Pattern
    • In-place on the same host (least moving parts).
    • Out-of-place (side-by-side Oracle Home with fallback).
    • Move & Upgrade (to OCI / new hardware) with minimal downtime using Data Guard/GoldenGate or transient staging.
  3. Adopt Multitenant (if not already)
    • Target architecture is CDB with PDBs. Convert Non-CDB to PDB during or before the upgrade.
    • Plan per-PDB resource rules and parameter overrides (see Lesson 3).
  4. Pre-Checks & Remediation
    • Run pre-upgrade checks and fix-ups. Resolve deprecated features, invalid objects, and dictionary issues.
    • Ensure recent RMAN backups and validated restore procedures.
  5. Run AutoUpgrade

    Prepare an AutoUpgrade configuration file and perform an analyze/execute cycle.

    # Example: AutoUpgrade config snippet (paths are illustrative)
    global.autoupg_log_dir=/u01/app/autoupgrade/logs
    
    upg1.sid=ORCL19
    upg1.source_home=/u01/app/oracle/product/19.0.0/dbhome_1
    upg1.target_home=/u01/app/oracle/product/23.0.0/dbhome_1
    upg1.target_version=23
    upg1.method=upgrade
    upg1.timezone_upg=yes
    upg1.upgrade_node=localhost
    upg1.run_utlrp=yes
    

    # Analyze first
    java -jar /u01/app/autoupgrade/autoupgrade.jar -config /tmp/autoupgrade.cfg -mode analyze
    
    # Execute upgrade
    java -jar /u01/app/autoupgrade/autoupgrade.jar -config /tmp/autoupgrade.cfg -mode deploy
    
  6. Post-Upgrade Tasks
    • Recompile objects (if not already handled), refresh statistics, validate synonyms, check jobs, and review plan baselines.
    • Enable or verify TDE, Unified Auditing, and Data Vault per your security baseline.
    • Validate application connectivity and run regression tests.
  7. Fleet Standardization
    • Register the new 23c/23ai home and gold images in Fleet Patching & Provisioning (FPP) for consistent rollout.
    • Capture IaC (Terraform/Ansible) definitions for repeatable builds and drift control.

Downtime Minimization Options

Sanity Check (Checklist)

Appendix: Legacy 11gR2 → 23c/23ai Considerations

For rare estates still on 11gR2, plan for additional steps: ensure supported patch level, consider Data Pump with character set checks for cross-platform moves, or use an intermediate staging environment if direct upgrade constraints apply. Validate application compatibility and test performance baselines - expect more remediation effort than a 19c source.

Next lesson: Fleet automation and image-based rollouts with FPP - standardizing 23c/23ai across environments.


SEMrush Software 5 SEMrush Banner 5