Hi everyone, hope you’re doing well.
This is one more post in a series of blog posts exploring the potential of AutoUpgrade-Composer, as we may have dozens of scenarios. You can read all blog posts about AutoUpgrade-Composer here: https://viniciusdba.com.br/autoupgrade-composer-posts/
In this blog post, we’ll perform a straightforward operation, with some customization.
So, imagine that you received a new server to install/configure Oracle Database. The first step before installing the software is to copy the patches and the software image to the server, right?
AutoUpgrade can download the patches for you even you don’t have any Oracle software in the server!
Be advised that as of now (June/2025), AutoUpgrade doesn’t have the capability to download the software image for Database. You need to do it through OTN:
Database Gold Image for 19c: LINUX.X64_193000_db_home.zip
In this blog post we’ll be downloading the patches. In a future post we will use the files we downloaded to create a new Oracle Home.
As mentioned, our goal is to download patches with AutoUpgrade, using a configuration file created by AutoUpgrade-Composer. We will download:
- RU:19.25
- OJVM
- OPATCH
- DPBP
- OCW
We will save the downloaded patches in the following directory:
- /u01/software
The Log Directory will be:
- /home/oracle/autoupgrade/download1/log
The Platform will be:
- Linux x86-64
The AutoUpgrade Keystore path for the MOS user credentials will be:
- /home/oracle/autoupgrade/keystore
So, first we’ll access AutoUpgrade-Composer: https://viniciusdba.com.br/autoupgrade-composer
Now you all know that AutoUpgrade-Composer is on its STABLE version, so we now have the capability to create configuration files for Upgrade operations as well. This will be covered in later posts! 🙂
The Download Mode is one of the execution modes for the Patch operation. All operations available for Patch operation are:
- Analyze
- Fixups
- Deploy
- Download
- Create Home
In the section Global Options, choose the option to Patch Database:

Now, click on Drop Down List for Execution Mode and chose the Download option:

In the screenshot below you can see the default options selected for Download mode:

The default options selected help you to create a valid configuration for AutoUpgrade, as you can see in the Generated Output (right side/column of your screen):

But we don’t want the default options, right? 🙂
Let’s simulate here, based on the options that user selects, the configuration will be invalid. Let’s turn off the switcher for Target Version:

Now let’s check the Generated Config again:

Now the Configuration is invalid and the message is clear – and this is exactly the message you will receive if you tried to execute AutoUpgrade!
AutoUpgrade Patching could not derive the target version for prefix patch1.
Do one of the following:
1. Specify the source_home parameter
2. Specify the patch parameter using RU:x.y notation
3. Specify the target_version parameter
So, to have a valid configuration, you must select one of the options:
- Source Home: if you select this option, AutoUpgrade will download the patch files based on the version you have on the selected Source Home
- RU using the RU:x.y notation: if you select this option, apart from selecting RU as one of the options to download, you also must use the RU:x.y notation, for example: RU:19.26
- Target_Version: if you select this option, AutoUpgrade will download the latest patches available for major version 19 (19c), which is the only valid parameter for Target_Version as of now (June/2025).
OK, let’s proceed with our configuration and we’ll fix this soon. As I mentioned earlier in this post, let’s customize the Log Directory and the AutoUpgrade Keystore paths:

You can also notice that there is a dropdown list for the Platform. So, even you if are running AutoUpgrade on Linux, you can download the patches for a different Platform. For example, you can use Mac OS and download patches for Windows, cool, isn’t it? You can check about this on Rodrigo’s post: Downloading Oracle Patches using CLI with AutoUpgrade Patching
Below you can see all Platforms available when downloading patches with AutoUpgrade:

Maybe you haven’t noticed, but you can rename the tabs, this was a special request of Jose Valdezio, a colleague that works for Enkitec too. You can read interesting blog posts on his blog: ORA-0800-DBA
Let’s rename our tab to download1. Click on the pencil icon next to patch1 in the tab:

Rename your tab to download1:


Now, let’s fix our configuration. In the menu tabs, select Patch Content:

In the Patch Content section, let’s select the following options:
- RU:19.25
- OJVM
- OPATCH
- DPBP
- OCW
Patch folder will be:
- /u01/software

Note that now we are using the notation RU:x.y, so, our configuration is valid:

If you scroll down, you will observe on the left column the instructions to save the MOS user credentials into AutoUpgrade Keystore, I will not repeat the steps here as I already configured the keystore in my previous post. If you would like to do it, you can read my previous post about AutoUpgrade-Composer: AutoUpgrade-Composer: Downloading and Applying the N-2 RU with Deploy Mode:

Continuing with the scroll, you have the instructions on how to run AutoUpgrade in Download mode:

Let’s proceed. First, I will check if the path I specified to AutoUpgrade Keystore is valid and if we have the files there:
[oracle@upgrade-lab ~]$ pwd /home/oracle [oracle@upgrade-lab ~]$ cd autoupgrade/keystore/ [oracle@upgrade-lab keystore]$ ls -l total 8 -rw-------. 1 oracle oinstall 766 May 22 19:04 cwallet.sso -rw-------. 1 oracle oinstall 0 May 22 19:04 cwallet.sso.lck -rw-------. 1 oracle oinstall 654 May 22 19:04 ewallet.p12 -rw-------. 1 oracle oinstall 0 May 22 19:04 ewallet.p12.lck [oracle@upgrade-lab keystore]$ pwd /home/oracle/autoupgrade/keystore
Checking the contents of my patch folder:
[oracle@upgrade-lab ~]$ ls -l /u01/software total 0
I saved my configuration file as download1.cfg:
[oracle@upgrade-lab ~]$ cat download1.cfg # Created by AutoUpgrade Composer # Patch, ExecMode: Download global.global_log_dir=/home/oracle/autoupgrade-patching/log global.keystore=/home/oracle/autoupgrade/keystore download1.log_dir=/home/oracle/autoupgrade/download1/log download1.folder=/u01/software download1.patch=RU:19.25,OJVM,OPATCH,DPBP,OCW download1.platform=LINUX.X64
Executing AutoUpgrade in download mode. You can see the download progressing:
[oracle@upgrade-lab ~]$ java -jar autoupgrade.jar -config /home/oracle/download1.cfg -patch -mode download AutoUpgrade Patching 25.3.250509 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 /u01/software ---------------------------------- DATABASE RELEASE UPDATE 19.25.0.0.0 File: p36912597_190000_Linux-x86-64.zip - VALIDATED DATAPUMP BUNDLE PATCH 19.25.0.0.0 File: p37056207_1925000DBRU_Generic.zip - VALIDATED GI RELEASE UPDATE 19.25.0.0.0 File: p36916690_190000_Linux-x86-64.zip / 46%
This is the final output of AutoUpgrade:
AutoUpgrade Patching 25.3.250509 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 /u01/software ---------------------------------- DATABASE RELEASE UPDATE 19.25.0.0.0 File: p36912597_190000_Linux-x86-64.zip - VALIDATED DATAPUMP BUNDLE PATCH 19.25.0.0.0 File: p37056207_1925000DBRU_Generic.zip - VALIDATED GI RELEASE UPDATE 19.25.0.0.0 File: p36916690_190000_Linux-x86-64.zip - VALIDATED OJVM RELEASE UPDATE 19.25.0.0.0 File: p36878697_190000_Linux-x86-64.zip - VALIDATED OPatch 12.2.0.1.46 for DB 19.0.0.0.0 (Apr 2025) File: p6880880_190000_Linux-x86-64.zip - VALIDATED ----------------------------------
Checking the contents of my patch folder again:
[oracle@upgrade-lab ~]$ ls -l /u01/software total 5223748 -rw-r--r--. 1 oracle oinstall 127601834 Jun 11 16:03 p36878697_190000_Linux-x86-64.zip -rw-r--r--. 1 oracle oinstall 1776391552 Jun 11 16:01 p36912597_190000_Linux-x86-64.zip -rw-r--r--. 1 oracle oinstall 3369893688 Jun 11 16:02 p36916690_190000_Linux-x86-64.zip -rw-r--r--. 1 oracle oinstall 2686646 Jun 11 16:01 p37056207_1925000DBRU_Generic.zip -rw-r--r--. 1 oracle oinstall 72539776 Jun 11 16:03 p6880880_190000_Linux-x86-64.zip
Hope it helps!
Peace!
Vinicius