How to create an Oracle AI Database 26ai environment with AutoUpgrade

With the on-premises Oracle AI Database 26ai database now GA (generally available) many of us are exciting reading-up on all the new features, discussing database upgrades with server and storage teams, speaking with developers about testing and scheduling regression testing with application owners.

But before we start we need to prepare an environment.

Pre-Installation Storage Snapshot

Before any installation, upgrade or patching I always recommend performing a storage snapshot to provide a recovery point incase something goes very wrong. In my lab I ams using a Pure Storage FlashArray, so I am covered, check with your storage administrator to see if your storage platform supports snapshots.

Oracle AI Database Preinstall

Let’s start by installing the Oracle provided Oracle AI Database 23ai preinstall package (and, yes it should read 23ai) to implement any modified Kernel settings.

dnf install -y oracle-database-preinstall-23ai

Create Database Directories

As the Oracle database account create your Oracle database layout, for example.

$ mkdir -p /u01/app/oracle
$ mkdir -p /u01/app/oraInventory
$ mkdir -p /u01/app/oracle/product/23.0.0/dbhome_1
$ mkdir /u02/oradata
$ mkdir /u03/fast_recovery_area

$ chown -R oracle:oinstall /u01/app/oracle
$ chown -R oracle:oinstall /u01/app/oraInventory
$ chown -R oracle:oinstall /u02/oradata
$ chown -R oracle:oinstall /u03/fast_recovery_area

AutoUpgrade Directories

I my lab, I have a many Oracle database servers, so to simplify the upgrade process I am using a Pure Storage FlashBlade NFS share mounted on each database server at /mnt/oracle.

If you are using a Pure Storage FlashArray you can also use the FlashArray to provide an NFS shared file system.

By using a shared NFS file system I only need to maintain one set of scripts, configuration files and download the patches only once.

$ mkdir -p /mnt/oracle/software/autoupgrade
$ mkdir -p /mnt/oracle/software/autoupgrade/logs
$ mkdir -p /mnt/oracle/software/autoupgrade/keystore
$ mkdir -p /mnt/oracle/software/autoupgrade/patches

Configure AutoUpgrade

Download the latest AutoUpgrade from https://download.oracle.com/otn-pub/otn_software/autoupgrade.jar, for example.

wget -O /mnt/oracle/software/autoupgrade/autoupgrade.jar https://download.oracle.com/otn-pub/otn_software/autoupgrade.jar

Confirm AutoUpgrade jar file using autoupgrade -version, for example:

$ java -jar autoupgrade.jar -version
build.date 2025/10/16 00:04:36 +0000
build.hash 54a1e2442
build.hash_date 2025/10/15 21:11:40 +0000
build.supported_target_versions 12.2,18,19,21,23
build.type production
build.label (HEAD, tag: v25.6, origin/stable_devel, stable_devel)
build.MOS_NOTE 2485457.1
build.MOS_LINK https://support.oracle.com/epmos/faces/DocumentDisplay?id=2485457.1

Create a configuration file, in the example below you can see the log, keystore and patch locations are using my NFS share, also note target_version is set to 23 NOT 26.

global.global_log_dir=/mnt/oracle/software/autoupgrade/logs
global.keystore=/mnt/oracle/software/autoupgrade/keystore
global.folder=/mnt/oracle/software/autoupgrade/patches
patch1.platform=LINUX.X64
patch1.patch=RU,OPATCH,DPBP
patch1.target_version=23

Configure My Oracle Support (MOS) access using the AutoUpgrade interactive -load_password option.

java -jar autoupgrade.jar -config config.cfg -patch -load_password

At the MOS> prompt type add -user followed by your Oracle My Oracle Support (MOS) account username and password when prompted.

Processing config file …

Starting AutoUpgrade Patching Password Loader – Type help for available options
Creating new AutoUpgrade Patching keystore – Password required
Enter password:
Enter password again:
AutoUpgrade Patching keystore was successfully created

MOS> add -user <oracle-sso-username>
Enter your secret/Password:
Re-enter your secret/Password:

MOS> save Convert the AutoUpgrade Patching keystore to auto-login [YES|NO] ? YES

MOS> exit

AutoUpgrade Patching Password Loader finished – Exiting AutoUpgrade Patching

Check the keystore directory has been populated, and file ownership is correct.

$ ls -l keystore/
total 2
-rw——-. 1 oracle oinstall 525 Jan 30 17:23 cwallet.sso
-rw——-. 1 oracle oinstall 0 Jan 30 17:21 cwallet.sso.lck
-rw——-. 1 oracle oinstall 413 Jan 30 17:23 ewallet.p12
-rw——-. 1 oracle oinstall 0 Jan 30 17:21 ewallet.p12.lck

Download Oracle AI 26ai Database

We are now ready to pull the Oracle AI Database 26ai patches using the config.cfg file.

java -jar autoupgrade.jar -config config.cfg -patch -mode download

If the MOS credentials provided are valid, AutoUpgrade determines the required patches and downloads all the files seamlessly.

AutoUpgrade Patching 25.6.251016 launched with default internal options
Processing config file …
Loading AutoUpgrade Patching keystore
AutoUpgrade Patching keystore is loaded

Connected to MOS – Searching for specified patches

————————————————————-
Downloading files to /mnt/oracle/software/autoupgrade/patches
————————————————————-
DATABASE RELEASE UPDATE 23.26.1.0.0 (GOLD IMAGE)
File: p38743961_230000_Linux-x86-64.zip – VALIDATED

DATAPUMP BUNDLE PATCH 23.26.1.0.0
File: p38842609_2326100DBRU_Generic.zip – VALIDATED

OPatch 12.2.0.1.49 for DB 23.0.0.0.0 (Jan 2026)
File: p6880880_230000_Linux-x86-64.zip – VALIDATED
————————————————————-

Create Oracle Home

Below is an example Oracle AI Database 26ai AutoUpgrade configuration file, again target_version is set to 23 and target_home is set to the newly created ORACLE_HOME location.

global.global_log_dir=/mnt/oracle/software/autoupgrade/logs
global.keystore=/mnt/oracle/software/autoupgrade/keystore
patch1.log_dir=/mnt/oracle/software/autoupgrade/logs
patch1.folder=/mnt/oracle/software/autoupgrade/patches
patch1.patch=RU,OPATCH,DPBP
patch1.target_version=23
patch1.target_home=/u01/app/oracle/product/23.0.0/dbhome_1
patch1.home_settings.edition=ee
patch1.home_settings.oracle_base=/u01/app/oracle
patch1.home_settings.inventory_location=/u01/app/oraInventory
patch1.download=no

We can now launch the Oracle AutoUpgrade to install Oracle AI Database 26ai into a new, empty Oracle Home.

java -jar autoupgrade.jar -config install_26ai.cfg -patch -mode create_home

AutoUpgrade starts and presents us with the console, from the patch> prompt type lsj -a (Lists Job by Status) to follow progress, once complete AutoUpgrade automatically exists.

AutoUpgrade Patching 25.6.251016 launched with default internal options
Processing config file …
Loading AutoUpgrade Patching keystore
AutoUpgrade Patching keystore is loaded
+—————————————–+
| Starting AutoUpgrade Patching execution |
+—————————————–+
Type ‘help’ to list console commands
patch> lsj -a
patch> +—-+————-+——-+———+——-+———-+——-+———————+
|Job#| DB_NAME| STAGE|OPERATION| STATUS|START_TIME|UPDATED| MESSAGE|
+—-+————-+——-+———+——-+———-+——-+———————+
| 100|create_home_1|EXTRACT|EXECUTING|RUNNING| 15:35:52|42s ago|Extracting gold image|
+—-+————-+——-+———+——-+———-+——-+———————+
Total jobs 1
The command lsj is running every 7 seconds. PRESS ENTER TO EXIT



The command lsj is running every 7 seconds. PRESS ENTER TO EXIT
+—-+————-+———–+———+——-+———-+——-+———————————+
|Job#| DB_NAME| STAGE|OPERATION| STATUS|START_TIME|UPDATED| MESSAGE|
+—-+————-+———–+———+——-+———-+——-+———————————+
| 100|create_home_1|OH_PATCHING|EXECUTING|RUNNING| 15:35:52| 8s ago|DATAPUMP BUNDLE PATCH 23.26.1.0.0|
+—-+————-+———–+———+——-+———-+——-+———————————+
Total jobs 1
The command lsj is running every 7 seconds. PRESS ENTER TO EXIT
Job 100 completed
——————- Final Summary ——————–
Number of databases [ 1 ]
Jobs finished [1]
Jobs failed [0]
Jobs restored [0]
Jobs pending [0]
Please check the summary report at:
/mnt/oracle/software/autoupgrade/logs/cfgtoollogs/patch/auto/status/status.html
/mnt/oracle/software/autoupgrade/logs/cfgtoollogs/patch/auto/status/status.log

On completion, check the new Oracle Home location, the status.log file and/or review the status.html file in your browser, for example:

AutoUpgrade Status

Summary

In this blog post I have shared how to prepare a Linus database server for an Oracle AI Database 26ai environment, configure AutoUpgrade for MOS access, download patches and then create an Oracle AI Database 26ai Oracle Home.

In my next blog post I will share how to use AutoUpgrade to upgrade an existing Oracle 19c database to 26ai.

Leave a Reply

Create a website or blog at WordPress.com

Up ↑

Discover more from Ron Ekins' - Oracle Technology, DevOps and Kubernetes Blog

Subscribe now to keep reading and get access to the full archive.

Continue reading