8 Patching Oracle Database Appliance

To keep Oracle Database Appliance running with the latest software, check for and apply Oracle Database Appliance patch bundles when they are released.

About Patching Oracle Database Appliance

Use the Oracle Database Appliance Patch Bundle to patch your appliance.

Patches offer new features and may improve the functionality of existing features. They also include security fixes for Oracle Linux and Oracle Database Appliance software.

About Out of Place Patching

Oracle Database Appliance uses the out-of-place patching model. This means that a new software Oracle home is created when patching an Oracle Grid Infrastructure or Oracle Database home. The patches for Oracle Grid Infrastructure and Oracle Database are available as images.

About MySQL Server and DCS Patching

Starting with Oracle Database Appliance release 19.10, DCS framework uses MySQL server as its metadata store. MySQL server is automatically installed and configured, during provisioning, when creating the appliance. Similarly, during patching, the odacli update-dcscomponents command automatically updates MySQL server. MySQL server processes do not run with root operating system user account. Instead, they run with a new operating system user account called odamysql. Note that the odamysql operating system user is created only for ownership purposes and it owns only the MySQL directories. The odamysql operating system user cannot log into the appliance. The odamysql operating system user account for MySQL ensures role separation between the user owning Oracle databases on the appliance and the user who owns the metadata used for DCS operations.

About Oracle Database Appliance Patch Bundles

The Oracle Database Appliance Patch Bundle contains the latest patches for Oracle Linux, DCS Admin, DCS Components, Oracle Appliance Manager, Oracle ILOM, firmware, enhancements, and fixes.

The Oracle Database Appliance Release Notes include information about the latest Oracle Database Appliance patch bundle and a list of component versions in the patch bundle. Oracle recommends updating the appliance with the latest Oracle Database Appliance software version to take advantage of new features, fixes, and the latest supported component versions. See Oracle Database Appliance Release Notes for the update paths.

Caution:

Do not patch Oracle Database Appliance using generic patches for Oracle Grid Infrastructure or Oracle Linux. Also do not use individual infrastructure patches, such as firmware patches. You must only use Oracle Database Appliance patches. If you use patches that are not intended for Oracle Database Appliance, or if you use OPatch, or a similar patching tool, then the metadata maintained by Oracle Database Appliance is not updated, and you cannot complete future patch updates. If you apply out-of-cycle Oracle Database Release Update (RU), then ensure that you also follow the recommendations described in the Readme for the RU.

The patch bundle provides all relevant patches for the entire system, including the following:

  • Oracle Database Appliance server
  • BIOS

  • Hardware drivers

  • Hardware Management Pack (HMP) and firmware drivers for various components

  • Oracle Appliance Manager

  • Oracle Linux

  • Java Runtime Environment (JRE)

  • Oracle Integrated Lights Out Manager (Oracle ILOM)

  • Oracle Auto Service Request (Oracle ASR)

  • Oracle Intelligent Platform Management Interface (Oracle IPMI)

  • Network Card patches for relevant hardware models

About Updating Oracle Linux RPMs

While not recommended, you can update some Oracle Linux RPMs for Oracle Database Appliance. Do not update or customize Oracle Linux kernel, Oracle Optimal Flexible Architecture, Oracle InfiniBand, or related software. Other software may be installed, updated, or customized. However, the Oracle Database Appliance update may not carry newer version dependencies of customized components. Therefore, you might be required to remove and subsequently reapply site-specific changes to successfully update Oracle Database Appliance in the future.

Note that from Oracle Database Appliance release 19.29 onwards, you can apply monthly patches to address critical CVEs related to Oracle Linux. Refer to Oracle Database Appliance Release Notes for more details on these monthly patches.

Caution:

For Oracle Database Appliance, do not update the following:

  • Oracle Linux Kernel (kernel)

  • Oracle Optimal Flexible Architecture (ofa)

  • Oracle RDMA packages (oracle-rdma-release)

For storage, do not apply any RPM updates.

About Rolling Back Updates

Understand the changes to the patching procedure in this Oracle Database Appliance release.

Rollback of updates on failure

Any failure during patching of Oracle Database Appliance may result in the system being in an inconsistent or partially-patched state and in some cases, can impact the database services running on the system. Starting with Oracle Database Appliance release 19.30, in case of a failure during the patching operation odacli update-servercomponents on the bare metal system, you can rollback the system to the state that existed before patching it. Usage of this rollback capability is at your discretion. You can exercise one of the following options:
  • Specify an additional option in the patching command odacli update-servercomponents on the bare metal system to indicate that in case of a failure, the system must be rolled back to the pre-update state that existed before the start of the patching operation. Then contact Oracle Support to get the issue fixed and retry the patching command. Before running the rollback, diagnostic logs are generated and stored at /opt/oracle/dcs/repo/diagcollect/job_ID.zip. These logs are stored in a separate volume and hence can be reviewed post rollback to identify the root cause of the job failure. Note that Oracle Database Appliance uses the ODABR utility to rollback updates in case of a failure during the patching operation.
  • Perform the patching operation odacli update-servercomponents on the bare metal system without specifying the option for rollback. At that point of failure, the system may be in an inconsistent or partially usable state. Contact Oracle Support to fix the issue and then retry the patching command to complete the patching operation.

Oracle Database Appliance Backup and Recovery (ODABR) is a utility, which enables backup and recovery of an Oracle Database Appliance node using consistent and incremental system backups on the bare metal system. DCS software uses Linux Logical Volume Manager (LVM) snapshots created by ODABR to restore the system to the pre-update state. Note that ODABR is available on Oracle Database Appliance bare metal systems only, and not on DB systems.

The system node backup includes following file systems:
  • /: Root file system
  • /boot: Boot partition
  • /opt: file system on which DCS software is installed
  • /u01: file system on which Oracle Grid Infrastructure is installed
  • Oracle Grid Infrastructure Oracle Cluster Registry (OCR) file

Applicability of Rollback for Patching Commands

DCS Admin Update and DCS Components Update:
  • The rollback for these operations is not supported.
Prepatch Report for Server Components:
  • Use the --rollback-onfailure,-rf option to run additional prechecks related to rollback of server components. Though optional, it is recommeded that you run prechecks with the rollback option to assess Oracle Database Appliance preparedness for a possible rollback, should such a situation arise.
  • Even if you do not specify the --rollback-onfailure,-rf option in the odacli create-prepatchreport command, you can specify the --rollback-onfailure,-rf option when you run the patching operation of server components, and this ensures the rollback-specific checks are run at that time.
  • The rollback feature is applicable for only Oracle Database Appliance bare metal system.
  • You can specify the rollback option in the prepatch report when patching to Oracle Database Appliance release 19.30.
[root@node1 ~]# odacli create-prepatchreport -sc -rf -v 19.30.0.0.0
...
__ROLLBACK__ 
Validate ODABR is installed     Success   Validated ODABR is installed          
Validate ODABR snapshots exist  Success   No ODABR snaps found on the node.     
Validate LVM free space         Success   LVM free space: 317.0(GB) on node:    
                                          odahan1                      
Validate command execution      Success   Validated command execution                

See Oracle Database Appliance Command Line Reference for more details about using the --rollback-onfailure,-rf option with the odacli create-prepatchreport command.

Server Components Update:

  • The rollback for this operation is also based on the usage of ODABR utility.
  • Use the --rollback-onfailure,-rf option if you want rollback to be initiated on failure of this patching operation.
  • The rollback option for this operation can only be performed when you specify the --node-name or --local options. ODABR-based snapshot as well as the rollback is only performed on the node that is being patched.
  • The rollback feature is applicable only for Oracle Database Appliance bare metal systems.
  • No firmware updates such as local disks or controller are rolled back in case the --rollback-onfailure,-rf option is specified when you run this operation.
  • This rollback capability is available when patching to Oracle Database Appliance release 19.30.
[root@odan1 ~]# odacli describe-job -i cf9431be-f3f4-4b89-8f48-22f85fefce19

Task Name                                Node Name                 Start Time                               End Time                                 Status          
---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
...
...
Create DCS metadata volume               odan1          February 19, 2026 11:15:47 IST           February 19, 2026 11:15:47 IST           Success         
Create ODA Backup Recovery snapshot      odan1          February 19, 2026 11:15:47 IST           February 19, 2026 11:16:00 IST           Success         
Server patching                          odan1          February 19, 2026 11:16:00 IST           February 19, 2026 11:16:25 IST           Failure         
...
...
Validate ODA Backup Recovery snapshot    odan1          February 19, 2026 11:16:25 IST           February 19, 2026 11:16:26 IST           Success         
tag                                                                                                                                                                  
Aggregate logs using TFA                 odan1          February 19, 2026 11:16:26 IST           February 19, 2026 11:19:45 IST           Success         
Stop crs                                 odan1          February 19, 2026 11:19:45 IST           February 19, 2026 11:22:09 IST           Success         
Restore ODA Backup Recovery snapshot     odan1          February 19, 2026 11:22:09 IST           February 19, 2026 11:22:44 IST           Success         
Reboot Node                              odan1          February 19, 2026 11:22:44 IST           February 19, 2026 11:27:31 IST           Success         
Validate DCS Agent is up                 odan1          February 19, 2026 11:27:21 IST           February 19, 2026 11:27:21 IST           Success         
Validate Restore ODABR snapshot          odan1          February 19, 2026 11:27:21 IST           February 19, 2026 11:27:21 IST           Success         
Validate Metadata Sync status            odan1          February 19, 2026 11:27:31 IST           February 19, 2026 11:27:31 IST           Success
Other Patching Operations:
  • Rollack is not supported for update of Oracle Grid Infrastructure home.
  • Rollback is not supported for update of shared firmware components such as shared disks and expander.

Diagnosability of Patching Failures

Whenever a patching operation is run with an ODABR-based rollback option, three LVM snapshots are created during the operation. Subsequently, if the patching operation fails, the system is restored to the exact snapshot state that existed before the start of the patching operation. As a result, any configuration changes, file updates, or log entries created after the snapshot are lost and diagnosis of the root cause of the patching failure becomes difficult. To solve this problem, Oracle Database Appliance uses TFA (Trace File Analyzer) to collect and preserve critical logs and runtime evidence required for troubleshooting the patching failure. The TFA collection occurs before triggering the rollback process. Each collection is named by the job ID and stored under the /opt/oracle/dcs/repo/diagcollect directory on a separate volume unaffected by ODABR.

Note:

After the rollback is complete, move these files out of this directory and then review it at your discretion or use it when you contact Oracle Support. This is required as the volume mapped to the /opt/oracle/dcs/repo/diagcollect directory where TFA stores all the diagnostics is 5 GB in size and at least 3 GB of free space is required to run the next patching operation with rollback enabled.

About Applying Monthly Updates on Oracle Database Appliance

Use the Oracle Database Appliance monthly update to update your appliance. You have the option of applying the monthly update with or without a restart of the system.

About Oracle Database Appliance monthly updates

The Oracle Database Appliance quarterly update that is released on a quarterly basis, also referred to as quarterly release, contains the latest patches for all Oracle Database Appliance components such as DCS components including DCS admin and DCS agent, infrastructure components such as MySQL and Oracle HAMI, server components such as Oracle Linux, OAK, and Oracle ILOM, firmware components such as disks and expanders, Oracle Grid Infrastructure and Oracle Database binaries. This quarterly patch release is released in alignment with the Oracle AI Database quarterly release and patches all the required components on Oracle Database Appliance.

From a security compliance perspective, it is beneficial to update Oracle Database Appliance on a more frequent basis to address critical CVEs in Oracle Linux and the Oracle Database Appliance software stack. The latter includes Deployment Coordination Service (DCS) and its Oracle or third-party software dependencies.

The salient features of an Oracle Database Appliance monthly update are as follows:
  • Oracle Database Appliance monthly update contains Oracle Linux updates to address critical CVEs reported after release of the last quarterly patch release.
  • Oracle Database Appliance monthly update may not contain updates for other Oracle Database Appliance components such as Oracle ILOM or firmware unless deemed necessary for the system to function normally.
  • The monthly update does not contain updates to Oracle Grid Infrastructure or Oracle Database binaries.
  • Oracle Database Appliance monthly update is a maintenance patch and it is designed to be applied quickly without incurring any downtime for running databases. All the updates in a monthly update can be applied without requiring any Oracle Clusterware downtime or restart of any of the nodes.
  • Application of these monthly updates is optional. You can choose to apply none or some of the monthly updates on top of the quarterly release before applying the next quarterly release.
  • To apply the monthly update, your deployment must be on the Oracle Database Appliance base release for the current monthly update series. For example, your deployment must be on Oracle Database Appliance release 19.29.0.0.0 to apply the Oracle Database Appliance 19.29.0.1.0 monthly update.
  • The procedure to apply a monthly update is similar to the procedure to apply a quarterly release except that you do not need to run the ODACLI commands to patch Oracle Grid Infrastructure, that is, the odacli update-gihome command, and the shared firmware, that is, the odacli update-storage command.
  • Oracle Database Appliance monthly update can be applied to both Oracle Database Appliance bare metal systems and DB systems.
  • The prepatch report for the server components mentions whether all the operating system updates can be applied without a restart or not. If a monthly update contains certain server component updates that cannot be applied without a restart, you can do one of the following:
    • Run the odacli update-servercomponents command with the --no-reboot,-nr option. This applies all updates except those that require a restart. At a convenient time later, you can run the odacli update-servercomponents command without the --no-reboot,-nr option. This applies the remaining updates and restarts the system.
    • Run the odacli update-servercomponents command without the --no-reboot,-nr option. This applies all the updates irrespective of their restart requirement and restarts the system.

Refer to Oracle Database Appliance Release Notes for component changes in the monthly update.

Applying the Oracle Database Appliance monthly update

Following are the steps to update your deployment to Oracle Database Appliance release 19.29.0.1.0.
  1. Download the Oracle Database Appliance release 19.29.0.1.0 server zip file from the specified location to your local appliance.
  2. Register the server zip file:
    /opt/oracle/dcs/bin/odacli update-repository -f location_of_the_serverzip
  3. Update DCS admin:
    /opt/oracle/dcs/bin/odacli update-dcsadmin -v 19.29.0.1.0
  4. Update DCS components:
    /opt/oracle/dcs/bin/odacli update-dcscomponents -v 19.29.0.1.0
  5. Generate the prepatch report for the server components:
    /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -v 19.29.0.1.0
  6. Update the server components:
    /opt/oracle/dcs/bin/odacli update-servercomponents -nr -v 19.29.0.1.0
    To update the server components without restarting the node, run the following command:
    odacli update-servercomponents [--no-reboot/-nr] -v monthly update version
    For example:
    odacli update-servercomponents -nr -v 19.29.0.1.0

    The --no-reboot, -nr option can be used with the odacli update-servercomponents command to apply only the monthly update. This option is not applicable for Oracle Database Appliance quarterly patch releases.

    To apply all the server components update, including those that do not require a restart as well as those that require a restart, run the following command:
    odacli update-servercomponents -v monthly update version
    For example:
    odacli update-servercomponents -v 19.29.0.1.0

    Note that if you first applied the updates that require a restart, you must run the odacli update-servercomponentscommand again to apply all the other patch updates that require a restart of the node.

The command reference for odacli update-servercomponents -h is as follows:
odacli update-servercomponents -h
update-servercomponents
    Updates OS, firmware, Oracle appliance kit and all other infrastructure
    components

Syntax
    update-servercomponents [-c component] [-f] [-l] [-nr]
    [-nn node_name] [-v version] [-j] [-h]

Parameters
    Options                    Description                                      
    -------------------------  -------------------------------------------------
    --component,-c             The component that is requested for update. The  
                               supported components include: OS                 

    --force,-f                 Ignore precheck error and force patching         

    --local,-l                 Update only components on local node             

    --no-reboot,-nr            Apply updates without rebooting the system       

    --node-name,-nn            Name of the node to be updated 

    --rollback-onfailure,-rf   Run odabr rollback on failure

    --version,-v               Version to be updated                            

    --json,-j                  Specifies to show output in JSON format          

    --help,-h                  Specifies to display help message           
Following is an example server components prepatch report that indicates whether all the Oracle Linux updates can be applied with or without a restart of the node.
# odacli describe-prepatchreport -i 4a07380b-afc9-47f9-b511-2e59dbc35756

Prepatch Report                                                  
------------------------------------------------------------------------
                 Job ID:  4a07380b-afc9-47f9-b511-2e59dbc35756
            Description:  Patch pre-checks for [OS, ILOM, ORACHKSERVER, SERVER] to 19.29.0.1.0
                 Status:  SUCCESS
                Created:  November 17, 2025 6:50:09 AM UTC
                 Result:  All pre-checks succeeded

Node Name       
---------------
n1 

Pre-Check                      Status   Comments                              
------------------------------ -------- -------------------------------------- 
__OS__ 
Validate supported versions     Success   Validated minimum supported versions. 
Validate patching tag           Success   Validated patching tag: 19.29.0.1.0.  
Is patch location available     Success   Patch location is available.          
Verify All OS patches           Success   No dependencies found for RPMs being  
                                          removed, updated and installed. Check 
                                          /opt/oracle/dcs/log/jobfiles/         
                                          dnfdryrunout_2025-11-17_06-50-        
                                          36.0392_582.log file for more details 
Verify Rebootless OS patches    Success   No dependencies found for RPMs being  
                                          removed, updated and installed. Check 
                                          /opt/oracle/dcs/log/jobfiles/         
                                          dnfdryrunout_2025-11-17_06-51-        
                                          07.0343_582.log file for more details 
Validate command execution      Success   Validated command execution           

__ILOM__ 
Validate ILOM server reachable  Success   Successfully connected with ILOM      
                                          server using public IP and USB        
                                          interconnect                          
Validate supported versions     Success   Validated minimum supported versions. 
Validate patching tag           Success   Validated patching tag: 19.29.0.1.0.  
Is patch location available     Success   Patch location is available.          
Checking Ilom patch Version     Success   Patch already applied                 
Patch location validation       Success   Successfully validated location       
Validate command execution      Success   Validated command execution           

__ORACHK__ 
Running orachk                  Success   Successfully ran Orachk               
Validate command execution      Success   Validated command execution           

__SERVER__ 
Validate local patching         Success   Successfully validated server local   
                                          patching                              
Validate all KVM ACFS           Success   All KVM ACFS resources are running    
resources are running                                                           
Validate DB System VM states    Success   All DB System VMs states are expected 
Validate Nexus Reset Estes-Ext  Success   This system has the required SAS3     
                                          controller firmware that does not     
                                          require I_T NEXUS reset               
Validate DB System AFD state    Success   All DB Systems are on required        
                                          versions                              
Validate command execution      Success   Validated command execution           

Node Name       
---------------
n2 

Pre-Check                      Status   Comments                              
------------------------------ -------- -------------------------------------- 
__OS__ 
Validate supported versions     Success   Validated minimum supported versions. 
Validate patching tag           Success   Validated patching tag: 19.29.0.1.0.  
Is patch location available     Success   Patch location is available.          
Verify All OS patches           Success   No dependencies found for RPMs being  
                                          removed, updated and installed. Check 
                                          /opt/oracle/dcs/log/jobfiles/         
                                          dnfdryrunout_2025-11-17_06-50-        
                                          52.0047_142.log file for more details 
Verify Rebootless OS patches    Success   No dependencies found for RPMs being  
                                          removed, updated and installed. Check 
                                          /opt/oracle/dcs/log/jobfiles/         
                                          dnfdryrunout_2025-11-17_06-51-        
                                          22.0703_142.log file for more details 
Validate command execution      Success   Validated command execution           

__ILOM__ 
Validate ILOM server reachable  Success   Successfully connected with ILOM      
                                          server using public IP and USB        
                                          interconnect                          
Validate supported versions     Success   Validated minimum supported versions. 
Validate patching tag           Success   Validated patching tag: 19.29.0.1.0.  
Is patch location available     Success   Patch location is available.          
Checking Ilom patch Version     Success   Patch already applied                 
Patch location validation       Success   Successfully validated location       
Validate command execution      Success   Validated command execution           

__ORACHK__ 
Running orachk                  Success   Successfully ran Orachk               
Validate command execution      Success   Validated command execution           

__SERVER__ 
Validate local patching         Success   Successfully validated server local   
                                          patching                              
Validate all KVM ACFS           Success   All KVM ACFS resources are running    
resources are running                                                           
Validate DB System VM states    Success   All DB System VMs states are expected 
Validate Nexus Reset Estes-Ext  Success   This system has the required SAS3     
                                          controller firmware that does not     
                                          require I_T NEXUS reset               
Validate DB System AFD state    Success   All DB Systems are on required        
                                          versions                              
Validate command execution      Success   Validated command execution   

About Patching Prechecks

Patching prechecks are designed to detect and flag problems that might be encountered during patching.

The prechecks view the state of the appliance, including the version and hardware specific upgrades, verify that the necessary conditions and checks are complete before attempting an upgrade, and identify conditions that might cause an upgrade to fail. You can avoid potential patching problems by correcting the conditions and resolving the issues before applying the patch.

Update the DCS framework to ensure that the latest updated prechecks are available when you run these commands.

Components Verified by Patching Prechecks

Check Component Verified
System patching prechecks

Checks that the DCS framework is online on all nodes.

Checks that there is sufficient space for the update.

Validates the minimum agent version and validates the Oracle Database Appliance release version.

Validate Nexus Reset Estes-Ext Failed
This server patching precheck is displayed for ORCL-EXT-SAS3 controller with model number 0x0097. This precheck verifies that controllers NVDATA is updated to 0e.01.00.0d version. If Estes-Ext is not updated to I_T Nexus Reset, then an error is displayed.
SAS3 controller requires Nexus Reset. 
DCS-10293: Current System has ORCL-EXT-SAS3 controller 
which requires the firmware update to enable NEXUS RESET. 
To perform the firmware update, run 
/opt/oracle/oak/pkgrepos/ 
firmwarecontroller/lsilogic/0x0097/ 
16.00.08.00/it_nexus_reset.sh 
on both nodes. 
Server patching prechecks
For operating system:
  • Validates supported versions
  • Validates minimum supported versions
  • Validates patching tag
  • Validates whether patch location is available
  • Verifies OS patch with tests to ensure operating system patching will complete successfully
  • Validates command execution
For Oracle ILOM:
  • Validates supported versions
  • Validates minimum supported versions
  • Validates patching tag
  • Validates whether patch location is available
  • Checks for Oracle ILOM patch version
  • Validates Patch location
  • Validates command execution
  • Validates connectivity to Oracle ILOM
For Oracle Grid Infrastructure:
  • Validates supported Oracle Grid Infrastructure versions
  • Validates available space
  • Validates whether Oracle Clusterware is running
  • Validates patching tag
  • Validates whether system is provisioned
  • Validates whether Oracle ASM is online
  • Validates the minimum agent version
  • Validates the central inventory
  • Validates patching locks
  • Validates whether clones location exists
  • Validates DB start dependencies
  • Validates DB stop dependencies
  • Validates command execution
For Oracle ORAchk:
  • Runs the ORAchk tool that performs operating system level prechecks.
  • Validates command execution
For server:
  • Validates whether server patching can be performed in local mode or not
  • Validates command execution
For rollback:
  • Validate repo volume space.
  • Validate ODABR is installed.
  • Validate ODABR snapshots exist.
  • Validate LVM free space on node.
Confirms that the bare metal system is upgraded, in the case of DB systems.

Verifies and confirms that the database start/stop dependencies are correct.

Confirms that patching locks are not present.

Verifies that the central inventory is accurate.

Database home patching prechecks

Confirms that Oracle Grid Infrastructure is installed

Confirms that the DCS framework is at the required version

Confirms that Oracle Clusterware is running on all nodes

Confirms that Oracle Grid Infrastructure is upgraded

Validates that there is sufficient disk space available

Checks if the disk group for database homes on Oracle ACFS is configured

Checks whether the clone file is present in the repository

Checks whether the /u01/app/odaorabase directory exists. If the directory exists, then the check confirms that there is a valid symbolic link.

Database home patching with out-of-place patching prechecks

The check creates a database home and verifies that all databases can be moved from the source home to new home.

This check validates that the --local option can be used for the database home.

Storage prechecks

Validates storage patch location and tag

Validates patching location and tag

Validates command execution

Validates Oracle ASM disk groups status

Validates rolling patch (for high-availability deployment)

About Enabling NUMA on Oracle Database Appliance

Understand how you can enable NUMA on bare metal, KVM, and DB Systems on Oracle Database Appliance.

NUMA (Non-Uniform Memory Access) can help facilitate efficient use of the underlying NUMA hardware. On Oracle Database Appliance, you can enable NUMA for databases on bare metal and DB systems, CPU pools, and for KVM applications.

About Enabling NUMA During Provisioning of Oracle Database Appliance

When you provision Oracle Database Appliance with release 19.30, NUMA is automatically enabled on the database, DB system and CPU pools. Hence, when you create a database, DB system, or CPU pool on an Oracle Database Appliance release 19.30 deployment, NUMA is automatically enabled and no additional configuration is required. NUMA is not enabled by default for application VMs.

About Enabling NUMA After Patching Oracle Database Appliance

NUMA is enabled by default starting with Oracle Database Appliance release 19.12. When you patch to Oracle Database Appliance release 19.30 from 19.11 or earlier, the odacli update-servercomponents command sets NUMA at the system level. New databases created after patching are NUMA-enabled. For existing databases, enable NUMA by running the command alter system set "enable_numa_support"=true on the database.

For existing DB systems, run the command odacli modify-dbsystem --enable-numa to enable NUMA for the dbsystem and the database of the DB system.

NUMA is not enabled by default for application VMs. For new and existing application VMs, run the command odacli modify-vm --enable-numa to enable NUMA for the VM configuration. You must also enable NUMA for the components inside the VM such as operating system and application running inside the VM. The command odacli modify-dbsystem --enable-numa is only supported on application VMs with even number of CPU cores so that CPU cores can be evenly distributed to NUMA nodes. In Oracle Database Appliance, one CPUcore is equal to 2 vCPU.

See the topic Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line for more details about the steps to patch your deployment and enable NUMA.

Minimizing Downtime When Patching Oracle Database Appliance

Understand best practices to minimize downtime when you apply patches to your Oracle Database Appliance deployment.

Recommendations for Minimizing Downtime During Patching

  • To minimize database patching downtime, it is recommended that you use Oracle RAC or Oracle RAC One Node on an Oracle Database Appliance high-availability system.
  • If available, use Oracle Data Guard and patch the standby system first. After you patch the standby system, switch the workload to the standby system, patch the primary system, and then switch the workload back to the primary system. For more information, see Patching Oracle Data Guard Databases on Oracle Database Appliance in this guide.
  • Always use Oracle Database Appliance Backup and Recovery (ODABR) to back up the system disks to ensure easy restore, if the patching operation fails. ODABR restores the system disk to pre-patching state.
  • Note that starting with Oracle Database Appliance release 19.30, the odacli update-servercomponents command supports the rollback option, which uses ODABR to take volume snapshots before patching starts. On failure, these volumes are restored to the state before patching started. Refer to the topic About Rolling Back Updates in this chapter for more details.
  • The odacli update-storage command includes a --rolling option for patching storage devices such as SSDs and HDDs. This option minimizes downtime by enabling patching with minimal service interruption. However, if the expander firmware needs to be updated, then the --rolling option is not supported. Expander firmware updates require a full stack shutdown, as rolling updates are not possible for this component. Oracle Database Appliance storage patching can be deferred, but it is not recommended. Note that the --rolling option cannot be used with the odacli update-storage command on single-node Oracle Database Appliance systems.

Minimizing Downtime using the --local Option During Patching

To minimize downtime, use the --local option with the odacli update-servercomponents and odacli update-dbhome commands. Update the DCS components and then run the odacli create-prepatchreport command. There is no downtime during the prepatch process. After analyzing the prepatch report, use the --local option to continue patching Oracle Database Appliance.

Note:

Before patching databases, ensure that the server patching operation on both nodes has completed successfully. Do not run the odacli update-dbhome and odacli update-database commands before the odacli update-servercomponents operation completes successfully on both nodes.

See Also:

Oracle Database High Availability Overview and Best Practices Guide in the Oracle Database 19c Documentation Library

About Updating Databases and Database Homes

Understand how to update a database and database home using either the Browser User Interface or odacli commands.

About Updating Databases and Database Homes

Oracle Database Appliance provides the following options to patch or update databases and database homes:
  • Patch or update each database home. The database home is patched out-of-place. When patching database home, Oracle Database Appliance automatically provisions a destination database home if needed, records the source database home, target version, and destination database home mapping in the metadata repository, and then moves all databases running in the source database home to the destination database home. Use the odacli update-dbhome command or the BUI to patch all databases from a single source database home to a single destination database home. Use this option if there are no constraints on your system for space usage or for provisioning a new database home.
  • Patch or update selected databases in a database home to a specific database home. You must specify the target database and destination database home when patching. You can use the odacli update-database command or the BUI to patch a specific database to a specific database home or to control when and how many database homes are provisioned. Using the update-database workflow also provides an option to run the operation again, if the patching operation failed. The abort and revert options available with the update-database workflow are not supported when the target database is a single-instance database.

Before patching the database or database home, upload the Oracle Database clone files for the database version, to the repository, and then create the database home. See Patching Oracle Database Appliance Using the CLI for the procedure to update the repository with the latest Oracle Database clone files.

Important:

The odacli update-database command that enabled association of a backup configuration with database was deprecated in Oracle Database Appliance release 19.6. Starting with Oracle Database Appliance release 19.17, the odacli update-database command enables database patching and is similar to the patching functionality that the odacli update-dbhome command provides, with a few differences as described in the Oracle Database Appliance Deployment Guide for your hardware model.

Before you run the odacli update-dbhome command, you must create the prepatch report for the database home by running the command odacli create-prepatchreport -d. Similarly, before you run the odacli update-database command, you must create the prepatch report either for the source database home or target database by running the command odacli create-prepatchreport -d or odacli create-prepatchreport -db respectively. The source and destination database homes must be consistent in the prepatch report and when specifying them in the odacli update-database command. If you do not create the prepatch report before the patch operation, then the odacli update-database and odacli update-dbhome commands fail with an error message prompting you to run the patching pre-checks.

For more information about the options for the update-dbhome and odacli update-database commands, see the chapter Oracle Database Appliance Command-Line Interface.

Updating ESTES-EXT Firmware Before Patching Oracle Database Appliance Server

Update TMT (Task Management Reset Type) for Estes-Ext before you patch the Oracle Database Appliance server.

Before you patch your Oracle Database Appliance deployment and your existing database homes to the current release, you must update I_T Target Reset of Estes-Ext to I_T Nexus Reset. This update is not included in the regular firmware update. Run the /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/it_nexus_reset.sh script to complete this update before you perform server patching. The patching precheck verifies that controllers NVDATA is updated to 0e.01.00.0d version. If Estes-Ext is not updated to I_T Nexus Reset, then an error is displayed.
The example release used in these steps is Oracle Database Appliance release 19.29. Ensure that you follow these steps for the current release:
  1. Ensure that you update the repository with the server zip file for the latest Oracle Database Appliance release, for example, 19.30.
  2. Shut down Oracle Grid Infrastructure, Oracle Database, and all applications before you run the update. Ensure that Oracle Clusterware is not running.
  3. Before you patch the Oracle Database Appliance server, run the following command:
    #  /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -listall
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
    Num   Ctlr            FW Ver        NVDATA        x86-BIOS         PCI Addr
    ----------------------------------------------------------------------------
     
    0  SAS3008(C0)  16.00.08.00    0e.01.00.0c    08.37.00.00     00:3b:00:00
    1  SAS3008(C0)  16.00.08.00    0e.01.00.0c    08.37.00.00     00:e3:00:00
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
  4. If the system is already up-to-date, then the following message is displayed:
    #   /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/it_nexus_reset.sh
    The I_T Nexus Reset is enabled for the SAS3 controller(s) in this system. No action required.
  5. Run the script.
    # /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/it_nexus_reset.sh

    Use the -force option to run the script without being prompted for answers.

  6. If Oracle Clusterware is running, then the following error is displayed:
    # /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/it_nexus_reset.sh
    CRS status found as up and running in this node, please SHUTDOWN the CRS and retry running this script
  7. Shut down Oracle Clusterware and run the script again:
    # /u01/app/19.29.0.0/grid/bin/crsctl check crs
    CRS-4638: Oracle High Availability Services is online
    CRS-4537: Cluster Ready Services is online
    CRS-4529: Cluster Synchronization Services is online
    CRS-4533: Event Manager is online
     
    # /u01/app/19.29.0.0/grid/bin/crsctl stop crs
    ...
    ...
    ...
     
    # /u01/app/19.29.0.0/grid/bin/crsctl check crs
    CRS-4639: Could not contact Oracle High Availability Services
     
    # /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/it_nexus_reset.sh
    ##################################################################
    Running it_nexus_reset.sh script is going to perform nexus reset
      and does DEEP POWER CYCLE of iLOM
    Please enter 'yes' to confirm the Nexus Reset operation,
      enter 'no' to cancel.
    ##################################################################
    Do you wish to continue and rest nexus adapter? (yes/no): yes
    Trying perform I_T Nexus Reset
    Updating Adapter with index: 0
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 0 -f /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/Oracle_SAS9300-8e_it_p_000D_ph16.04_nexus.bin
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash Firmware Image
     
                    Firmware Image has a Valid Checksum.
                    Firmware Version 16.00.08.00
                    Firmware Image compatible with Controller.
     
                    Valid NVDATA Image found.
                    NVDATA Major Version 0e.01
                    Checking for a compatible NVData image...
     
                    NVDATA Device ID and Chip Revision match verified.
                    NVDATA SubSystem Vendor and SubSystem Device ID match verified.
                    NVDATA Versions Compatible.
                    Valid Initialization Image verified.
                    Valid BootLoader Image verified.
     
                    Beginning Firmware Download...
                    Firmware Download Successful.
     
                    Verifying Download...
     
                    Firmware Flash Successful.
     
                    Resetting Adapter...
                    Adapter Successfully Reset.
     
                    NVDATA Version 0e.01.00.0d
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 0 -o -e 3
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Advanced Mode Set
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Erase Flash
     
            Erasing Persistent Configuration Pages Region...
     
            Erase Flash Operation Successful!
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 0 -b /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/mpt3x64.rom
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash BIOS Image
     
                    Validating BIOS Image...
     
                    BIOS Header Signature is Valid
     
                    BIOS Image has a Valid Checksum.
     
                    BIOS PCI Structure Signature Valid.
     
                    BIOS Image Compatible with the SAS Controller.
     
                    Attempting to Flash BIOS Image...
     
                    Verifying Download...
     
                    Flash BIOS Image Successful.
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 0 -b /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/mptsas3.rom
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash BIOS Image
     
                    Validating BIOS Image...
     
                    BIOS Header Signature is Valid
     
                    BIOS Image has a Valid Checksum.
     
                    BIOS PCI Structure Signature Valid.
     
                    BIOS Image Compatible with the SAS Controller.
     
                    Attempting to Flash BIOS Image...
     
                    Verifying Download...
     
                    Flash BIOS Image Successful.
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 0 -b /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/lsisas3f.rom
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash BIOS Image
     
                    Validating BIOS Image...
     
                    BIOS Header Signature is Valid
     
                    BIOS Image has a Valid Checksum.
     
                    BIOS PCI Structure Signature Valid.
     
                    BIOS Image Compatible with the SAS Controller.
     
                    Attempting to Flash BIOS Image...
     
                    Verifying Download...
     
                    Flash BIOS Image Successful.
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    Updating Adapter with index: 1
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 1 -f /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/Oracle_SAS9300-8e_it_p_000D_ph16.04_nexus.bin
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash Firmware Image
     
                    Firmware Image has a Valid Checksum.
                    Firmware Version 16.00.08.00
                    Firmware Image compatible with Controller.
     
                    Valid NVDATA Image found.
                    NVDATA Major Version 0e.01
                    Checking for a compatible NVData image...
     
                    NVDATA Device ID and Chip Revision match verified.
                    NVDATA SubSystem Vendor and SubSystem Device ID match verified.
                    NVDATA Versions Compatible.
                    Valid Initialization Image verified.
                    Valid BootLoader Image verified.
     
                    Beginning Firmware Download...
                    Firmware Download Successful.
     
                    Verifying Download...
     
                    Firmware Flash Successful.
     
                    Resetting Adapter...
                    Adapter Successfully Reset.
     
                    NVDATA Version 0e.01.00.0d
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 1 -o -e 3
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Advanced Mode Set
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Erase Flash
     
            Erasing Persistent Configuration Pages Region...
     
            Erase Flash Operation Successful!
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 1 -b /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/mpt3x64.rom
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash BIOS Image
     
                    Validating BIOS Image...
     
                    BIOS Header Signature is Valid
     
                    BIOS Image has a Valid Checksum.
     
                    BIOS PCI Structure Signature Valid.
     
                    BIOS Image Compatible with the SAS Controller.
     
                    Attempting to Flash BIOS Image...
     
                    Verifying Download...
     
                    Flash BIOS Image Successful.
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 1 -b /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/mptsas3.rom
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash BIOS Image
     
                    Validating BIOS Image...
     
                    BIOS Header Signature is Valid
     
                    BIOS Image has a Valid Checksum.
     
                    BIOS PCI Structure Signature Valid.
     
                    BIOS Image Compatible with the SAS Controller.
     
                    Attempting to Flash BIOS Image...
     
                    Verifying Download...
     
                    Flash BIOS Image Successful.
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    running /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -c 1 -b /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/lsisas3f.rom
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
            Executing Operation: Flash BIOS Image
     
                    Validating BIOS Image...
     
                    BIOS Header Signature is Valid
     
                    BIOS Image has a Valid Checksum.
     
                    BIOS PCI Structure Signature Valid.
     
                    BIOS Image Compatible with the SAS Controller.
     
                    Attempting to Flash BIOS Image...
     
                    Verifying Download...
     
                    Flash BIOS Image Successful.
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.
    create script for ILOM deep recycle
    chmod 777 /tmp/dcsfiles/
    chmod 700 /tmp/dcsfiles//rebootIlom.sh
    prepare system for ILOM recyle
    Enabling HOST_AUTO_POWER_ON on ILOM
    Connected. Use ^D to exit.
    -> set /SP/policy HOST_AUTO_POWER_ON=enabled
    Set 'HOST_AUTO_POWER_ON' to 'enabled'
     
    -> Session closed
    Disconnected
    Setting set /System/ deep_power_cycle=true
    Connected. Use ^D to exit.
    -> set /System/ deep_power_cycle=true
    Set 'deep_power_cycle' to 'true'
     
    -> Session closed
    Disconnected
    Trigger recycle script in background
  8. Continue patching your server and databases as described in the topic Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line.
  9. Verify that the updates ran successfully. When the system comes up, verify the NVDATA versions and firmware version.
    # /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/sas3flash -listall
    Avago Technologies SAS3 Flash Utility
    Version 17.00.00.00 (2018.04.02)
    Copyright 2008-2018 Avago Technologies. All rights reserved.
     
            Adapter Selected is a Avago SAS: SAS3008(C0)
     
    Num   Ctlr            FW Ver        NVDATA        x86-BIOS         PCI Addr
    ----------------------------------------------------------------------------
     
    0  SAS3008(C0)  16.00.08.00    0e.01.00.0d    08.37.00.00     00:3b:00:00
    1  SAS3008(C0)  16.00.08.00    0e.01.00.0d    08.37.00.00     00:e3:00:00
     
            Finished Processing Commands Successfully.
            Exiting SAS3Flash.

Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line

Follow these steps to apply patches to your Oracle Database Appliance bare metal deployment and existing Oracle Database homes, using ODACLI.

To patch your Oracle Database Appliance deployment and your existing database homes to the current release, you must download the Oracle Database Appliance Server patch, Oracle Grid Infrastructure clone files, and Oracle Database clone files and update the repository on the bare metal system.

Remember:

When you patch your Oracle Database Appliance deployment to the current release, for ORCL-EXT-SAS3 controller with model number 0x0097, the patching precheck verifies that controllers NVDATA is updated to 0e.01.00.0d version. You must update I_T Target Reset of Estes-Ext to I_T Nexus Reset by running the /opt/oracle/oak/pkgrepos/firmwarecontroller/lsilogic/0x0097/16.00.08.00/it_nexus_reset.sh script. For more information, see the topic Updating ESTES-EXT Firmware Before Patching Oracle Database Appliance Server.

Important:

Starting with Oracle Database Appliance release 19.30, for server components and storage patching, nodes are restarted in a serial fashion, that is, one after another, on a high-availability system.

Important:

Oracle recommends always patching from within the previous four Oracle Database Appliance releases because these patching paths are tested. If you patch from any earlier Oracle Database Appliance release, then you may encounter errors.

Note:

Run the steps in this procedure in the same order as documented. Run the odacli update-dcsadmin and odacli update-dcscomponents commands, and then run the odacli update-servercomponents command and the odacli update-gihome command.

Important:

Ensure that there is sufficient space on your appliance to download the patches.

Important:

If you want to install third-party software on your Oracle Database Appliance, then ensure that the software does not impact the Oracle Database Appliance software. The version lock on Oracle Database Appliance RPMs displays a warning if the third-party software tries to override Oracle Database Appliance RPMs. You must remove the affected RPMs before patching Oracle Database Appliance so that patching completes successfully. You can reinstall these RPMs after successfully patching the appliance.

Important:

If you have configured Oracle ASR and are patching your appliance to Oracle Database Appliance release 19.30, then after updating the DCS framework, delete the existing Oracle ASR configuration and reconfigure it, before you run the odacli update-servercomponents command to patch your appliance.

Note:

Public network gateway must be responsive to ping requests. Oracle Clusterware uses the public network gateway as ping target to facilitate the VIP failover in Oracle Database Appliance high-availability environment.

See Also:

Enabling Custom SSH Key Management on Oracle Database Appliance in this guide for information on how to manage SSH keys on bare metal systems and DB systems

ODABR software is included in Oracle Database Appliance release 19.30 and is installed when you provision the appliance. The ODABR utility is installed in the /opt/odabr location. To create an ODABR snapshot, run the /opt/odabr/odabr backup -snap command. After patching completes successfully, run the /opt/odabr/odabr delsnap command to delete the ODABR snapshot. Note that if you run the odacli update-servercomponents command with the -rf option, manual creation and deletion of ODABR snapshots is no longer required. The process now automatically manages ODABR snapshots. If a patching failure occurs, then the ODABR snapshots are restored and the node is restarted automatically as part of the recovery process.

Follow these steps to apply patches to your Oracle Database Appliance and update existing database homes.
  1. Download the Oracle Database Appliance Server Patch for the ODACLI/DCS stack (patch 38776074), Oracle Grid Infrastructure clone files (patch 30403673), and Oracle Database clone files (patch 30403662) from My Oracle Support to a temporary location on an external client. Refer to the Oracle Database Appliance Release Notes for details about the patch numbers and software for the latest release.
    For example, download the server patch for 19.30:
    p38776074_1930000_Linux-x86-64.zip
  2. Unzip the software — it contains README.html and one or more zip files for the patch.
    unzip p38776074_1930000_Linux-x86-64.zip

    The zip file contains the following software file:

    oda-sm-19.30.0.0.0-date-server.zip
  3. Copy all the software files from the external client to Oracle Database Appliance. For High-Availability deployments, copy the software files to only one node. The software files are copied to the other node during the patching process. Use the scp or sftp protocol to copy the bundle.
    Example using scp command:
    # scp software_file root@oda_host:/tmp
    Example using sftp command:
    # sftp root@oda_host
    Enter the root password, and copy the files.
    put software_file
  4. Update the repository with the server software file:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/software_file

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/oda-sm-19.30.0.0.0-date-server.zip 
    {
      "jobId" : "3e6d09ba-29f0-4c8d-aac2-6d4a37dee67c",
      "status" : "Created",
      "message" : "/tmp/oda-sm-19.30.0.0.0-260204-server.zip",
      "reports" : [ ],
      "createTimestamp" : "February 06, 2026 06:31:23 AM UTC",
      "resourceList" : [ ],
      "description" : "Repository Update",
      "updatedTime" : "February 06, 2026 06:31:23 AM UTC",
      "jobType" : null,
      "cpsMetadata" : null
    }
    
    [root@node1 ~]# odacli describe-job -i 3e6d09ba-29f0-4c8d-aac2-6d4a37dee67c
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  3e6d09ba-29f0-4c8d-aac2-6d4a37dee67c
                Description:  Repository Update
                     Status:  Success
                    Created:  February 06, 2026 06:31:23 UTC
                    Message:  /tmp/oda-sm-19.30.0.0.0-260204-server.zip
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Check AvailableSpace                     odan2             February 06, 2026 06:31:30 UTC           February 06, 2026 06:31:30 UTC           Success         
    Setting up SSH equivalence               odan1             February 06, 2026 06:31:30 UTC           February 06, 2026 06:31:34 UTC           Success         
    Copy BundleFile                          odan1             February 06, 2026 06:31:34 UTC           February 06, 2026 06:31:37 UTC           Success         
    Validating CopiedFile                    odan2             February 06, 2026 06:31:37 UTC           February 06, 2026 06:31:40 UTC           Success         
    Unzip bundle                             odan1             February 06, 2026 06:31:40 UTC           February 06, 2026 06:31:56 UTC           Success         
    Unzip bundle                             odan2             February 06, 2026 06:31:56 UTC           February 06, 2026 06:32:12 UTC           Success         
    Delete PatchBundles                      odan2             February 06, 2026 06:32:12 UTC           February 06, 2026 06:32:12 UTC           Success         
  5. Confirm that the repository update is successful:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-job -i job_ID
  6. Update DCS admin:
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli update-dcsadmin -v version
    For example, for 19.30:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcsadmin -v 19.30.0.0.0
    {
      "jobId" : "fc14bb8c-38b9-4bf5-9023-56393cdab964",
      "status" : "Created",
      "message" : "",
      "reports" : [ ],
      "createTimestamp" : "February 06, 2026 06:41:02 AM UTC",
      "resourceList" : [ ],
      "description" : "DcsAdmin patching to 19.30.0.0.0",
      "updatedTime" : "February 06, 2026 06:41:02 AM UTC",
      "jobType" : null,
      "cpsMetadata" : null
    }
    
    [root@node1 ~]# odacli describe-job -i fc14bb8c-38b9-4bf5-9023-56393cdab964
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  fc14bb8c-38b9-4bf5-9023-56393cdab964
                Description:  DcsAdmin patching to 19.30.0.0.0
                     Status:  Success
                    Created:  February 06, 2026 06:41:02 UTC
                    Message:  
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Dcs-admin upgrade                        odan1             February 06, 2026 06:41:03 UTC           February 06, 2026 06:41:13 UTC           Success         
    Dcs-admin upgrade                        odan2             February 06, 2026 06:41:13 UTC           February 06, 2026 06:41:24 UTC           Success         
    Ping DCS Admin                           odan1             February 06, 2026 06:41:24 UTC           February 06, 2026 06:42:21 UTC           Success         
    Ping DCS Admin                           odan2             February 06, 2026 06:42:21 UTC           February 06, 2026 06:42:27 UTC           Success         
  7. Update the DCS components:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcscomponents -v version
    For example, for 19.30:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcscomponents -v 19.30.0.0.0
    
    {
      "jobId" : "598a4d04-a47b-45f0-a9ae-4520a2bc8a11",
      "status" : "Running",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "February 06, 2026 06:43:33 AM UTC",
      "description" : "Update-dcscomponents job submitted",
      "updatedTime" : "February 06, 2026 06:43:33 AM UTC",
      "jobType" : "",
      "externalRequestId" : null,
      "action" : null
    }

    The odacli update-dcscomponents command updates Oracle HAMI, MySQL, and updates other DCS components such as the DCS framework, DCS CLI, DCS agent, and DCS controller on Oracle Database Appliance.

    Starting with Oracle Database Appliance release 19.30, the odacli update-dcscomponent command submits a job on the bare metal system managed by DCS admin. Monitor the progress of the job using the odacli list-admin-jobs command to list jobs, and the odacli describe-admin-job -i job_ID command to view job details.

    [root@node1 ~]# odacli describe-admin-job -i 598a4d04-a47b-45f0-a9ae-4520a2bc8a11
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  598a4d04-a47b-45f0-a9ae-4520a2bc8a11
                Description:  Update-dcscomponents to 19.30.0.0.0
                     Status:  Success
                    Created:  February 06, 2026 06:43:33 UTC
                    Message:  Update-dcscomponents is successful on all the node(s):
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Pre-checks for update DCS components     odan1             February 06, 2026 06:43:45 UTC           February 06, 2026 06:43:53 UTC           Success         
    Pre-checks for update DCS components     odan2             February 06, 2026 06:43:55 UTC           February 06, 2026 06:44:03 UTC           Success         
    Update DCS components                    odan1             February 06, 2026 06:44:04 UTC           February 06, 2026 06:44:04 UTC           Success         
    Stop DCS-Agent                           odan1             February 06, 2026 06:44:04 UTC           February 06, 2026 06:44:05 UTC           Success         
    Update MySql                             odan1             February 06, 2026 06:44:05 UTC           February 06, 2026 06:44:20 UTC           Success         
    Apply metadata schema changes            odan1             February 06, 2026 06:44:20 UTC           February 06, 2026 06:44:20 UTC           Success         
    Modify MySQL Metadata                    odan1             February 06, 2026 06:44:21 UTC           February 06, 2026 06:44:21 UTC           Success         
    Update DCS-Agent                         odan1             February 06, 2026 06:44:21 UTC           February 06, 2026 06:44:33 UTC           Success         
    Update DCS-Cli                           odan1             February 06, 2026 06:44:34 UTC           February 06, 2026 06:44:36 UTC           Success         
    Update DCS-Controller                    odan1             February 06, 2026 06:44:36 UTC           February 06, 2026 06:45:00 UTC           Success         
    Update AHF RPM                           odan1             February 06, 2026 06:45:00 UTC           February 06, 2026 06:47:18 UTC           Success         
    Reset Keystore password                  odan1             February 06, 2026 06:47:18 UTC           February 06, 2026 06:47:39 UTC           Success         
    Update HAMI                              odan1             February 06, 2026 06:47:39 UTC           February 06, 2026 06:48:34 UTC           Success         
    Remove old library files                 odan1             February 06, 2026 06:48:35 UTC           February 06, 2026 06:48:35 UTC           Success         
    Post DCS update actions                  odan1             February 06, 2026 06:48:35 UTC           February 06, 2026 06:48:36 UTC           Success         
    Update DCS components                    odan2             February 06, 2026 06:48:37 UTC           February 06, 2026 06:48:37 UTC           Success         
    Stop DCS-Agent                           odan2             February 06, 2026 06:48:37 UTC           February 06, 2026 06:48:38 UTC           Success         
    Update MySql                             odan2             February 06, 2026 06:48:38 UTC           February 06, 2026 06:48:53 UTC           Success         
    Apply metadata schema changes            odan2             February 06, 2026 06:48:53 UTC           February 06, 2026 06:48:54 UTC           Success         
    Modify MySQL Metadata                    odan2             February 06, 2026 06:48:54 UTC           February 06, 2026 06:48:54 UTC           Success         
    Update DCS-Agent                         odan2             February 06, 2026 06:48:55 UTC           February 06, 2026 06:49:07 UTC           Success         
    Update DCS-Cli                           odan2             February 06, 2026 06:49:07 UTC           February 06, 2026 06:49:10 UTC           Success         
    Update DCS-Controller                    odan2             February 06, 2026 06:49:10 UTC           February 06, 2026 06:49:33 UTC           Success         
    Update AHF RPM                           odan2             February 06, 2026 06:49:34 UTC           February 06, 2026 06:51:53 UTC           Success         
    Reset Keystore password                  odan2             February 06, 2026 06:51:53 UTC           February 06, 2026 06:52:14 UTC           Success         
    Update HAMI                              odan2             February 06, 2026 06:52:15 UTC           February 06, 2026 06:53:09 UTC           Success         
    Remove old library files                 odan2             February 06, 2026 06:53:09 UTC           February 06, 2026 06:53:09 UTC           Success         
    Post DCS update actions                  odan2             February 06, 2026 06:53:10 UTC           February 06, 2026 06:53:10 UTC           Success       

    Note:

    Note that for DCS framework update to be complete, the odacli update-dcscomponents command must be run. Ensure that you run the odacli update-dcsadmin command and then run the odacli update-dcscomponents command.
  8. Update the repository with the Oracle Grid Infrastructure clone file and the Oracle Database clone file:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/software_file

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/odacli-dcs-19.30.0.0.0-date-GI-19.30.0.0.zip
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/odacli-dcs-19.30.0.0.0-date-DB-19.30.0.0.zip
    [root@node1 ~]# odacli update-repository -f /tmp/odacli-dcs-19.30.0.0.0-260204-GI-19.30.0.0.zip 
    {
      "jobId" : "c64f51d9-d55b-42cc-b310-52c3ac021e0a",
      "status" : "Created",
      "message" : "/tmp/odacli-dcs-19.30.0.0.0-260204-GI-19.30.0.0.zip",
      "reports" : [ ],
      "createTimestamp" : "February 06, 2026 07:33:21 AM UTC",
      "resourceList" : [ ],
      "description" : "Repository Update",
      "updatedTime" : "February 06, 2026 07:33:21 AM UTC",
      "jobType" : null,
      "cpsMetadata" : null,
      "ecJobId" : null
    }
    
    
    [root@node1 ~]# odacli describe-job -i c64f51d9-d55b-42cc-b310-52c3ac021e0a
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  c64f51d9-d55b-42cc-b310-52c3ac021e0a
                Description:  Repository Update
                     Status:  Success
                    Created:  February 06, 2026 07:33:21 UTC
                    Message:  /tmp/odacli-dcs-19.30.0.0.0-260204-GI-19.30.0.0.zip
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Unzip bundle                             odan1             February 06, 2026 07:33:24 UTC           February 06, 2026 07:34:26 UTC           Success         
  9. Run patching pre-checks. You must run the odacli create-prepatchreport command before you patch your server; otherwise, the odacli update-servercomponents and odacli update-gihome commands fail with an error message prompting you to run the patching pre-checks. Note that odacli create-prepatchreport supports the -l option, which runs the prechecks on the local node only. However, to be able to patch the system, the command odacli create-prepatchreport must be run either separately on both the nodes using the --local,-l option, or run once without the --local,-l option, so that the prechecks can be performed on both nodes before patching is started on any of the two nodes.
    Before running the odacli update-servercomponents command, you must run the odacli create-prepatchreport command for the server components. This step is mandatory to ensure that all prerequisite checks are completed successfully.
    Important: The odacli update-servercomponents operation cannot proceed unless the pre-patch report for the server components is generated and completed successfully.
    Note that there is no downtime when the patching prechecks run.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -v 19.30.0.0.0
    You can use the --rollback-onFailure,-rf option with the odacli create-prepatchreport command to check space for both the ODABR snapshot and the /opt/oracle/dcs/repo location. Use this option with the --servercomponents,-sc option in the odacli create-prepatchreport command. For example:
    # /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -v 19.30.0.0.0 -rf
    The following rollback checks are performed when you specify the -rf option:
    __ROLLBACK__
    Validate ODABR is installed SUCCESS Validated ODABR is installed
    Validate ODABR snapshots exist SUCCESS No ODABR snaps found on the node.
    Validate LVM free space SUCCESS LVM free space: 207.0(GB) on node: odaha1 
    You can also generate a pre-patch report for Oracle Grid Infrastructure home at this stage. Running Oracle Grid Infrastructure prechecks is strongly recommended to detect and resolve potential issues before initiating patching activities. To generate a consolidated pre-patch report for both server components and the GI home, run the following command:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -gi -v version
    Note that you can run the prepatch report for all components in a single command:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -gi -st -v version
    For example, for 19.30:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -gi -st -v 19.30.0.0.0
  10. Verify that the patching pre-checks ran successfully:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-prepatchreport -i report_ID
    Use the command odacli describe-prepatchreport to view details of the pre-patch report. Fix the warnings and errors mentioned in the report and proceed with the server patching.
    [root@oda1 opt]# odacli describe-prepatchreport -i a4dd0689-8964-430c-92a4-d8c3c944052c
    
    Prepatch Report                                                  
    ------------------------------------------------------------------------
                     Job ID:  a4dd0689-8964-430c-92a4-d8c3c944052c
                Description:  Patch pre-checks for [OS, ILOM, ORACHKSERVER, SERVER, ASR, ROLLBACK] to 19.30.0.0.0
                     Status:  SUCCESS
                    Created:  February 20, 2026 3:40:49 PM IST
                     Result:  All pre-checks succeeded
    
    Node Name       
    ---------------
    odan1 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __OS__ 
    Validate supported versions     Success   Validated minimum supported versions. 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is patch location available     Success   Patch location is available.          
    Verify All OS patches           Success   No changes for RPMs being removed,    
                                              updated and installed. Check          
                                              /opt/oracle/dcs/log/jobfiles/         
                                              dnfdryrunout_2026-02-20_15-41-        
                                              08.0886_30293.log file for more       
                                              details                               
    Validate command execution      Success   Validated command execution           
    
    __ILOM__ 
    Validate ILOM server reachable  Success   Successfully connected with ILOM      
                                              server using public IP and USB        
                                              interconnect                          
    Validate supported versions     Success   Validated minimum supported versions. 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is patch location available     Success   Patch location is available.          
    Checking Ilom patch Version     Success   Successfully verified the versions    
    Patch location validation       Success   Successfully validated location       
    Validate command execution      Success   Validated command execution           
    
    __ORACHK__ 
    Running orachk                  Success   Successfully ran Orachk               
    Validate command execution      Success   Validated command execution           
    
    __SERVER__ 
    Validate local patching         Success   Successfully validated server local   
                                              patching                              
    Validate all KVM ACFS           Success   All KVM ACFS resources are running    
    resources are running                                                           
    Validate DB System VM states    Success   All DB System VMs states are expected 
    Validate DB System AFD state    Success   All DB Systems are on required        
                                              versions                              
    Validate command execution      Success   Validated command execution           
    
    __ASR__ 
    Validate ASR configuration      Success   Successfully validated the ASR        
                                              configuration                         
    Validate command execution      Success   Validated command execution           
    
    __ROLLBACK__ 
    Validate ODABR is installed     Success   Validated ODABR is installed          
    Validate ODABR snapshots exist  Success   No ODABR snaps found on the node.     
    Validate LVM free space         Success   LVM free space: 317.0(GB) on node:    
                                              odan1                      
    Validate command execution      Success   Validated command execution           
    
    Node Name       
    ---------------
    odan2 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __OS__ 
    Validate supported versions     Success   Validated minimum supported versions. 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is patch location available     Success   Patch location is available.          
    Verify All OS patches           Success   No changes for RPMs being removed,    
                                              updated and installed. Check          
                                              /opt/oracle/dcs/log/jobfiles/         
                                              dnfdryrunout_2026-02-20_15-41-        
                                              20.0080_209.log file for more details 
    Validate command execution      Success   Validated command execution           
    
    __ILOM__ 
    Validate ILOM server reachable  Success   Successfully connected with ILOM      
                                              server using public IP and USB        
                                              interconnect                          
    Validate supported versions     Success   Validated minimum supported versions. 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is patch location available     Success   Patch location is available.          
    Checking Ilom patch Version     Success   Successfully verified the versions    
    Patch location validation       Success   Successfully validated location       
    Validate command execution      Success   Validated command execution           
    
    __ORACHK__ 
    Running orachk                  Success   Successfully ran Orachk               
    Validate command execution      Success   Validated command execution           
    
    __SERVER__ 
    Validate local patching         Success   Successfully validated server local   
                                              patching                              
    Validate all KVM ACFS           Success   All KVM ACFS resources are running    
    resources are running                                                           
    Validate DB System VM states    Success   All DB System VMs states are expected 
    Validate DB System AFD state    Success   All DB Systems are on required        
                                              versions                              
    Validate command execution      Success   Validated command execution           
    
    __ASR__ 
    Validate ASR configuration      Success   Successfully validated the ASR        
                                              configuration                         
    Validate command execution      Success   Validated command execution           
    
    __ROLLBACK__ 
    Validate ODABR is installed     Success   Validated ODABR is installed          
    Validate ODABR snapshots exist  Success   No ODABR snaps found on the node.     
    Validate LVM free space         Success   LVM free space: 317.0(GB) on node:    
                                              odan2                      
    Validate command execution      Success   Validated command execution   
  11. Apply the server update with the odacli update-servercomponents command to update the server. The components that are updated include Oracle Linux, Oracle HMP, Oracle ILOM, BIOS, local disk firmware, local controller firmware, shared controller firmware, and OAKD. Note that you can use the --local,-l option with the odacli update-servercomponents command to update the local node.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-servercomponents -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-servercomponents -v 19.30.0.0.0

    When you run the odacli update-servercomponents command with the --rollback-onFailure,-rf option, ODABR snapshots are created after all the prechecks on both nodes have completed successfully. This ensures that rollback is possible if the patching process fails. Use the --rollback-onFailure,-rf option along with the option for the local node, that is, --local,-l or the node name for high-availability systems, that is --node-name,-nn.

    If you specified the --rollback-onfailure,-rf option with the odacli update-servercomponents command, you must review the job output and task status. In this mode, patching is performed as a single operation across the appliance and not in a rolling manner. If the update failed and rollback occurred, then check for the SUCCESS status of rollback-related tasks indicating the rollback completed successfully. For example, tasks such as Validate ODA Backup Recovery snapshot, Restore ODA Backup Recovery snapshot, and Validate Restore ODABR snapshot. If the update succeeded, then check for tasks indicating that the ODABR snapshot creation and deletion completed. For example, tasks such as Create ODA Backup Recovery snapshot and Delete ODA Backup Recovery snapshot. If these confirmation tasks are missing, incomplete, or show errors, and snapshots remain, contact Oracle Support with the task and log details.

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-servercomponents -v 19.30.0.0.0 -rf -nn node_name

    If you run the odacli update-servercomponents command without the -l or -nn option, patching is performed on all nodes. In this mode, patching is performed as a single operation across the appliance and not in a rolling manner. Starting with Oracle Database Appliance release 19.30, the nodes are restarted serially, that is, one node after another. If any node fails to complete its restart, then the patching job is marked as failed. The maximum wait time of 30 minutes per node is the maximum time allowed for each node to complete its restart before the job is marked as failed. If you run the odacli update-servercomponents command with the -l or -nn option, only the specified node is patched and restarted.

    An example of successful rollback after the odacli update-servercomponents command failed is as follows:
    # odacli describe-job -i e5d9d763-0481-4235-944f-b75129b9c68d
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  e5d9d763-0481-4235-944f-b75129b9c68d
                Description:  Server Patching to 19.30.0.0.0 on odan1
                     Status:  Failure
                    Created:  February 19, 2026 11:15:36 IST
                    Message:  DCS-10003:File '/opt/oracle/oak/pkgrepos/oak/19.30.0.0.0/oda-hw-mgmt-19.30.0.0.0_LINUX.X64_260210-1.x86_64.rpm' does not exist.
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Validating GI user metadata              odan1          February 19, 2026 11:15:45 IST           February 19, 2026 11:15:46 IST           Success         
    Validating GI user metadata              odan2          February 19, 2026 11:15:45 IST           February 19, 2026 11:15:46 IST           Success         
    Validate ILOM server reachable           odan1          February 19, 2026 11:15:46 IST           February 19, 2026 11:15:47 IST           Success         
    Create DCS metadata volume               odan1          February 19, 2026 11:15:47 IST           February 19, 2026 11:15:47 IST           Success         
    Create ODA Backup Recovery snapshot      odan1          February 19, 2026 11:15:47 IST           February 19, 2026 11:16:00 IST           Success         
    Server patching                          odan1          February 19, 2026 11:16:00 IST           February 19, 2026 11:16:25 IST           Failure         
    Modify BM udev rules                     odan1          February 19, 2026 11:16:01 IST           February 19, 2026 11:16:12 IST           Success         
    Creating local repository                odan1          February 19, 2026 11:16:12 IST           February 19, 2026 11:16:13 IST           Success         
    OSPatchBaseRepo                                                                                                                                                      
    Stop oakd                                odan1          February 19, 2026 11:16:12 IST           February 19, 2026 11:16:12 IST           Success         
    Updating versionlock plugin              odan1          February 19, 2026 11:16:13 IST           February 19, 2026 11:16:15 IST           Success         
    Applying OS Patches                      odan1          February 19, 2026 11:16:15 IST           February 19, 2026 11:16:23 IST           Success         
    Applying HMP Patches                     odan1          February 19, 2026 11:16:23 IST           February 19, 2026 11:16:25 IST           Success         
    Creating local repository HMPPatchRepo   odan1          February 19, 2026 11:16:23 IST           February 19, 2026 11:16:23 IST           Success         
    Patch location validation                odan1          February 19, 2026 11:16:25 IST           February 19, 2026 11:16:25 IST           Failure         
    Server patching                          odan1          February 19, 2026 11:16:25 IST           February 19, 2026 11:16:25 IST           Failure         
    Setting SELinux mode                     odan1          February 19, 2026 11:16:25 IST           February 19, 2026 11:16:25 IST           Success         
    Validate ODA Backup Recovery snapshot    odan1          February 19, 2026 11:16:25 IST           February 19, 2026 11:16:26 IST           Success         
    tag                                                                                                                                                                  
    Aggregate logs using TFA                 odan1          February 19, 2026 11:16:26 IST           February 19, 2026 11:19:45 IST           Success         
    Stop crs                                 odan1          February 19, 2026 11:19:45 IST           February 19, 2026 11:22:09 IST           Success         
    Restore ODA Backup Recovery snapshot     odan1          February 19, 2026 11:22:09 IST           February 19, 2026 11:22:44 IST           Success         
    Reboot Node                              odan1          February 19, 2026 11:22:44 IST           February 19, 2026 11:27:31 IST           Success         
    Validate DCS Agent is up                 odan1          February 19, 2026 11:27:21 IST           February 19, 2026 11:27:21 IST           Success         
    Validate Restore ODABR snapshot          odan1          February 19, 2026 11:27:21 IST           February 19, 2026 11:27:21 IST           Success         
    Validate Metadata Sync status            odan1          February 19, 2026 11:27:31 IST           February 19, 2026 11:27:31 IST           Success         
  12. Confirm that the server update is successful:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-job -i job_ID

    Note:

    If you manually created ODABR snapshots before running the server update, it is recommended that you delete these snapshots after the update completes successfully. If you used the --rollback-onfailure,-rf option with the odacli update-servercomponents command and there are ODABR snapshots remaining after the operation, do not delete these snapshots. Instead, contact Oracle Support for guidance.

    Note:

    See My Oracle Support Note 2466177.1 for the procedure to create and delete ODABR snapshots: https://support.oracle.com/rs?type=doc&id=2466177.1
  13. Before you update the Oracle Grid Infrastructure home, run the odacli create-prepatchreport command with the -gi option.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -gi -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -gi -v 19.30.0.0.0
  14. Verify that the patching pre-checks ran successfully:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-prepatchreport -i ID

    For example:

    [root@oda1 ~]# odacli create-prepatchreport  -v 19.30.0.0.0 -gi
    
    [root@node1 ~]# odacli describe-prepatchreport -i 7ee68a01-46d6-4969-8c17-e94d1c92d9f0
    
    Prepatch Report                                                  
    ------------------------------------------------------------------------
                     Job ID:  7ee68a01-46d6-4969-8c17-e94d1c92d9f0
                Description:  Patch pre-checks for [RHPGI, GI] to 19.30.0.0.0
                     Status:  SUCCESS
                    Created:  February 6, 2026 7:35:42 AM UTC
                     Result:  All pre-checks succeeded
    
    Node Name       
    ---------------
    odan1 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __RHPGI__ 
    Validate available space        Success   Validated free space under /u01       
    Evaluate GI patching            Success   Successfully validated GI patching    
    Validate command execution      Success   Validated command execution           
    
    __GI__ 
    Validate GI metadata            Success   Successfully validated GI metadata    
    Validate supported GI versions  Success   Successfully validated minimum version
    Is clusterware running          Success   Clusterware is running                
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is system provisioned           Success   Verified system is provisioned        
    Validate ASM is online          Success   ASM is online                         
    Validate kernel log level       Success   Successfully validated the OS log     
                                              level                                 
    Validate Central Inventory      Success   oraInventory validation passed        
    Validate patching locks         Success   Validated patching locks              
    Validate clones location exist  Success   Validated clones location             
    Validate DB start dependencies  Success   DBs START dependency check passed     
    Validate DB stop dependencies   Success   DBs STOP dependency check passed      
    Validate space for clones       Success   Clones volume is already created      
    volume                                                                          
    Validate command execution      Success   Validated command execution           
    
    Node Name       
    ---------------
    odan2 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __RHPGI__ 
    Validate available space        Success   Validated free space under /u01       
    Validate command execution      Success   Validated command execution           
    
    __GI__ 
    Validate GI metadata            Success   Successfully validated GI metadata    
    Validate supported GI versions  Success   Successfully validated minimum version
    Is clusterware running          Success   Clusterware is running                
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is system provisioned           Success   Verified system is provisioned        
    Validate ASM is online          Success   ASM is online                         
    Validate kernel log level       Success   Successfully validated the OS log     
                                              level                                 
    Validate Central Inventory      Success   oraInventory validation passed        
    Validate patching locks         Success   Validated patching locks              
    Validate clones location exist  Success   Validated clones location             
    Validate DB start dependencies  Success   DBs START dependency check passed     
    Validate DB stop dependencies   Success   DBs STOP dependency check passed      
    Validate space for clones       Success   Clones volume is already created      
    volume                                                                          
    Validate command execution      Success   Validated command execution             

    Fix the warnings and errors mentioned in the report and proceed with the patching operation.

  15. Update Oracle Grid Infrastructure software by updating the Oracle Grid Infrastructure home. Note that you can use the --local option with the odacli update-gihome command to update the local node.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-gihome -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-gihome -v 19.30.0.0.0
    {
      "jobId" : "fa465c4f-8b7a-474b-9be1-82d2477c04aa",
      "status" : "Created",
      "message" : "",
      "reports" : [ ],
      "createTimestamp" : "February 06, 2026 07:42:38 UTC",
      "resourceList" : [ ],
      "description" : "Patch GI with RHP to 19.30.0.0.0",
      "updatedTime" : "February 06, 2026 07:42:38 UTC",
      "jobType" : null,
      "cpsMetadata" : null,
      "ecJobId" : null
    }
    
    
    [root@node1 ~]# odacli describe-job -i fa465c4f-8b7a-474b-9be1-82d2477c04aa
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  fa465c4f-8b7a-474b-9be1-82d2477c04aa
                Description:  Patch GI with RHP to 19.30.0.0.0
                     Status:  Success
                    Created:  February 06, 2026 07:42:38 UTC
                    Message:  
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Patch GI with RHP to 19.30.0.0.0         odan1             February 06, 2026 07:43:09 UTC           February 06, 2026 07:59:52 UTC           Success         
    Starting the clusterware                 odan2             February 06, 2026 07:43:25 UTC           February 06, 2026 07:43:25 UTC           Success         
    Registering image                        odan2             February 06, 2026 07:43:27 UTC           February 06, 2026 07:43:27 UTC           Success         
    Creating GI home directories             odan2             February 06, 2026 07:43:28 UTC           February 06, 2026 07:43:28 UTC           Success         
    Registering image                        odan2             February 06, 2026 07:43:28 UTC           February 06, 2026 07:43:28 UTC           Success         
    Registering working copy                 odan1             February 06, 2026 07:43:28 UTC           February 06, 2026 07:43:28 UTC           Success         
    Extract GI clone                         odan2             February 06, 2026 07:43:29 UTC           February 06, 2026 07:43:29 UTC           Success         
    Provisioning Software Only GI with RHP   odan1             February 06, 2026 07:43:29 UTC           February 06, 2026 07:43:29 UTC           Success         
    Patch GI with RHP                        odan1             February 06, 2026 07:44:11 UTC           February 06, 2026 07:58:31 UTC           Success         
    Set CRS ping target                      odan1             February 06, 2026 07:58:31 UTC           February 06, 2026 07:58:31 UTC           Success         
    Updating .bashrc                         odan2             February 06, 2026 07:58:32 UTC           February 06, 2026 07:58:32 UTC           Success         
    Updating GI home metadata                odan2             February 06, 2026 07:58:33 UTC           February 06, 2026 07:58:33 UTC           Success         
    Updating GI home version                 odan1             February 06, 2026 07:58:33 UTC           February 06, 2026 07:58:38 UTC           Success         
    Updating GI home version                 odan2             February 06, 2026 07:58:33 UTC           February 06, 2026 07:58:39 UTC           Success         
    Updating All DBHome version              odan1             February 06, 2026 07:58:39 UTC           February 06, 2026 07:59:10 UTC           Success         
    Updating All DBHome version              odan2             February 06, 2026 07:58:39 UTC           February 06, 2026 07:59:01 UTC           Success         
    Starting the clusterware                 odan2             February 06, 2026 07:59:32 UTC           February 06, 2026 07:59:32 UTC           Success         
    Validate ACFS resources are running      odan1             February 06, 2026 07:59:33 UTC           February 06, 2026 07:59:35 UTC           Success         
    Validate GI availability                 odan1             February 06, 2026 07:59:33 UTC           February 06, 2026 07:59:33 UTC           Success         
    Validate DB System VMs states            odan1             February 06, 2026 07:59:35 UTC           February 06, 2026 07:59:37 UTC           Success         
    Patch KVM CRS type                       odan1             February 06, 2026 07:59:37 UTC           February 06, 2026 07:59:38 UTC           Success         
    Patch VM Storage Accelerator volumes     odan1             February 06, 2026 07:59:38 UTC           February 06, 2026 07:59:40 UTC           Success         
    Patch VM vDisks CRS dependencies         odan1             February 06, 2026 07:59:40 UTC           February 06, 2026 07:59:41 UTC           Success         
    Patch CPU Pools distribution             odan1             February 06, 2026 07:59:41 UTC           February 06, 2026 07:59:42 UTC           Success         
    Patch DB System domain config            odan1             February 06, 2026 07:59:41 UTC           February 06, 2026 07:59:41 UTC           Success         
    Save custom VNetworks to storage         odan1             February 06, 2026 07:59:42 UTC           February 06, 2026 07:59:43 UTC           Success         
    Create network filters                   odan1             February 06, 2026 07:59:43 UTC           February 06, 2026 07:59:44 UTC           Success         
    Add network filters to DB Systems        odan1             February 06, 2026 07:59:44 UTC           February 06, 2026 07:59:47 UTC           Success         
    Patch DB System SCSI controllers         odan1             February 06, 2026 07:59:47 UTC           February 06, 2026 07:59:49 UTC           Success         
    Patch DB Systems vDisks CRS dependencies odan1             February 06, 2026 07:59:49 UTC           February 06, 2026 07:59:50 UTC           Success         
    Patch DB Systems custom scale metadata   odan1             February 06, 2026 07:59:50 UTC           February 06, 2026 07:59:51 UTC           Success         
  16. Before you update the storage components, run the odacli create-prepatchreport command with the -st option.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -st -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -st -v 19.30.0.0.0
  17. Verify that the patching pre-checks ran successfully:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-prepatchreport

    For example:

    [root@node1 ~]# odacli create-prepatchreport -st -v 19.30.0.0.0
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  cec0de75-3f60-4c44-af5f-6f4349243290
                Description:  Patch pre-checks for [STORAGE] to 19.30.0.0.0
                     Status:  Created
                    Created:  February 06, 2026 08:08:37 UTC
                    Message:  Use 'odacli describe-prepatchreport -i cec0de75-3f60-4c44-af5f-6f4349243290' to check details of results
    
    Task Name                                Start Time                               End Time                                 Status          
    ---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
    
    
    [root@node1 ~]# odacli describe-job -i cec0de75-3f60-4c44-af5f-6f4349243290
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  cec0de75-3f60-4c44-af5f-6f4349243290
                Description:  Patch pre-checks for [STORAGE] to 19.30.0.0.0
                     Status:  Success
                    Created:  February 06, 2026 08:08:37 UTC
                    Message:  Use 'odacli describe-prepatchreport -i <ID>' to check prepatch results
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Run patching pre-checks                  odan1             February 06, 2026 08:08:49 UTC           February 06, 2026 08:09:19 UTC           Success         
    
    
    
    [root@node1 ~]# odacli describe-prepatchreport -i cec0de75-3f60-4c44-af5f-6f4349243290
    
    Prepatch Report                                                  
    ------------------------------------------------------------------------
                     Job ID:  cec0de75-3f60-4c44-af5f-6f4349243290
                Description:  Patch pre-checks for [STORAGE] to 19.30.0.0.0
                     Status:  SUCCESS
                    Created:  February 6, 2026 8:08:37 AM UTC
                     Result:  All pre-checks succeeded
    
    Node Name       
    ---------------
    odan1 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __STORAGE__ 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Patch location validation       Success   Verified patch location               
    Patch tag validation            Success   Verified patch tag                    
    Storage patch tag validation    Success   Verified storage patch location       
    Verify ASM disks status         Success   ASM disks are online                  
    Validate rolling patch          Success   Rolling mode patching allowed as      
                                              there is no expander and controller   
                                              upgrade.                              
    Validate command execution      Success   Validated command execution           
    
    Node Name       
    ---------------
    odan2 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __STORAGE__ 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Patch location validation       Success   Verified patch location               
    Patch tag validation            Success   Verified patch tag                    
    Storage patch tag validation    Success   Verified storage patch location       
    Verify ASM disks status         Success   ASM disks are online                  
    Validate rolling patch          Success   Rolling mode patching allowed as      
                                              there is no expander and controller   
                                              upgrade.                              
    Validate command execution      Success   Validated command execution           

    Use the command odacli describe-prepatchreport to view details of the pre-patch report. The pre-patch report also indicates whether storage patching can be rolling or not, based on whether an expander update is also required.

    Fix the warnings and errors mentioned in the report and proceed with the storage components patching.

  18. Update the storage components.
    When the --rolling option is not specified, all nodes in the system are restarted. The restart process is performed in serial mode. Oracle Clusterware remains unavailable on both nodes until the restart process is completed on all nodes. The job status is marked as successful only after all nodes restart successfully. The --rolling option is supported only when patching shared disks in rolling mode. In rolling mode, Oracle Clusterware is not stopped and the system is not restarted. Rolling patching is not supported when the --only-expander option is specified or when the selected storage patch version includes expander firmware updates.
    You can choose to run the patching operation using the --only-disk option to skip expander firmware updates. When --only-disk is specified, the --rolling option is supported. If the --rolling option is not specified along with the --only-disk option, then Oracle Clusterware is stopped on both nodes, and all nodes are restarted at the end of the job.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-storage -v version --rolling

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-storage -v 19.30.0.0.0 --rolling
    [root@node1 ~]# odacli describe-job -i 5a449150-d0e3-4768-8b0a-acba795732ca
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  5a449150-d0e3-4768-8b0a-acba795732ca
                Description:  Storage Firmware Patching to 19.30.0.0.0
                     Status:  Success
                    Created:  February 06, 2026 08:10:27 UTC
                    Message:  
    
    Task Name                                Node Name                 Start Time                               End Time                                 Status          
    ---------------------------------------- ------------------------- ---------------------------------------- ---------------------------------------- ----------------
    Applying Firmware shared Disk Patches    odan1             February 06, 2026 08:10:32 UTC           February 06, 2026 08:10:36 UTC           Success         
    Applying Firmware shared Disk Patches    odan2             February 06, 2026 08:10:36 UTC           February 06, 2026 08:10:41 UTC           Success         
    Update Storage version                   odan1             February 06, 2026 08:10:41 UTC           February 06, 2026 08:10:46 UTC           Success         
    Update Storage version                   odan2             February 06, 2026 08:10:41 UTC           February 06, 2026 08:10:46 UTC           Success         
    Generating and saving BOM                odan1             February 06, 2026 08:10:46 UTC           February 06, 2026 08:11:52 UTC           Success         
    Generating and saving BOM                odan2             February 06, 2026 08:10:46 UTC           February 06, 2026 08:11:52 UTC           Success         
    PreRebootNode Actions                    odan1             February 06, 2026 08:11:52 UTC           February 06, 2026 08:11:52 UTC           Success         
    PreRebootNode Actions                    odan2             February 06, 2026 08:11:52 UTC           February 06, 2026 08:11:53 UTC           Success         
  19. To patch existing Oracle Database Homes to release 19.30, ensure that the repository is updated with the Oracle Database clone files. If you have not updated the repository with the Oracle Database clone files, then update the repository.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/DB_software_file
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/odacli-dcs-19.30.0.0.0-date-DB-19.30.0.0.zip

    Note:

    You have the option to patch each database home using the odacli update-dbhome command or patch selected databases in a database home to a specific database home using the odacli update-database command.
  20. To patch all databases in a specified database home:

    WARNING:

    When you patch your deployment from Oracle Database Appliance release 19.29 to Oracle Database Appliance release 19.30, if you see the error DCS-10315 - Patch described in My Oracle Support Note KB867473 must be applied. in the prepatch report, ensure that you follow the procedure described in My Oracle Support Note KB867473, and then use the --force option with the odacli update-database or odacli update-dbhome command.
    1. If you want to patch each database home by running the odacli update-dbhome command, then create the prepatch report first. Run the patching pre-checks and review the prepatch report. You must run the odacli create-prepatchreport command before you patch your Oracle Database homes; otherwise, the odacli update-dbhome command fails with an error message prompting you to run the patching pre-checks.
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport --dbhome --dbhomeid DB_Home_ID -v release_number
      [root@oda1 opt]# odacli describe-prepatchreport -i Job_ID
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport --dbhome --dbhomeid d03d5187-1c20-470a-9d51-49a0d6f60772 -v 19.30.0.0.0
      [root@oda1 opt]# odacli describe-prepatchreport -i 6f040374-d271-4711-a7db-e6c04597ad69
      
      Patch pre-check report                                           
      ------------------------------------------------------------------------
                       Job ID:  6f040374-d271-4711-a7db-e6c04597ad69
                  Description:  Patch pre-checks for [DB, ORACHKDB]: DbHome is OraDB19000_home1
                       Status:  SUCCESS
                      Created:  January 8, 2026 8:59:48 AM HKT
                       Result:  All pre-checks succeeded
      
      Node Name       
      ---------------
      node1 
      
      Pre-Check                      Status   Comments                              
      ------------------------------ -------- -------------------------------------- 
      __DB__ 
      Validate DB Home ID             Success   Validated DB Home ID:                 
                                                d03d5187-1c20-470a-9d51-49a0d6f60772  
      Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
      Is system provisioned           Success   Verified system is provisioned        
      Validate minimum agent version  Success   Validated minimum agent version       
      Is GI upgraded                  Success   Validated GI is upgraded              
      Validate available space for    Success   Validated free space required under   
      db                                        /u01/app/odaorahome                   
      Validate dbHomesOnACFS          Success   User has configured diskgroup for     
      configured                                Database homes on ACFS                
      Validate Oracle base            Success   Successfully validated Oracle Base    
      Is DB clone available           Success   Successfully validated clone file     
                                                exists                                
      Evaluate DBHome patching with   Success   Successfully validated updating       
      RHP                                       dbhome with RHP.  and local patching  
                                                is possible                           
      Validate command execution      Success   Validated command execution           
      
      __ORACHK__ 
      Running orachk                  Success   Successfully ran Orachk               
      Validate command execution      Success   Validated command execution           
      
      Node Name       
      ---------------
      node2 
      
      Pre-Check                      Status   Comments                              
      ------------------------------ -------- -------------------------------------- 
      __DB__ 
      Validate DB Home ID             Success   Validated DB Home ID:                 
                                                d03d5187-1c20-470a-9d51-49a0d6f60772  
      Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
      Is system provisioned           Success   Verified system is provisioned        
      Validate minimum agent version  Success   Validated minimum agent version       
      Is GI upgraded                  Success   Validated GI is upgraded              
      Validate available space for    Success   Validated free space required under   
      db                                        /u01/app/odaorahome                   
      Validate dbHomesOnACFS          Success   User has configured diskgroup for     
      configured                                Database homes on ACFS                
      Validate Oracle base            Success   Successfully validated Oracle Base    
      Is DB clone available           Success   Successfully validated clone file     
                                                exists                                
      Evaluate DBHome patching with   Success   Successfully validated updating       
      RHP                                       dbhome with RHP.                      
      Validate command execution      Success   Validated command execution           
      
      __ORACHK__ 
      Running orachk                  Success   Successfully ran Orachk               
      Validate command execution      Success   Validated command execution                   
      If the disk group for database homes on Oracle ACFS is not set up as described in step 17, then the prepatch report lists the error The system is not set up to create database homes on ACFS. Run the odacli configure-dbhome-storage command to configure the disk group for database homes on Oracle ACFS.
      Note that running the odacli create-prepatchreport command creates the target Oracle Grid Infrastructure home, which the database patching operation uses.
    2. If the pre-patch report does not show any errors, then update the database home to the latest release. You need not use the -f option with the odacli update-dbhome command. Note that you can use the --local option with the odacli update-dbhome command to update the local node.
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dbhome --id DB_Home_ID -v release_number

      For example, for 19.30:

      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dbhome --id 7c67c5b4-f585-4ba9-865f-c719c63c0a6e -v 19.30.0.0.0
  21. To patch a specific database to a specific database home:

    WARNING:

    When you patch your deployment from Oracle Database Appliance release 19.29 to Oracle Database Appliance release 19.30, if you see the error DCS-10315 - Patch described in My Oracle Support Note KB867473 must be applied. in the prepatch report, ensure that you follow the procedure described in My Oracle Support Note KB867473, and then use the --force option with the odacli update-database or odacli update-dbhome command.
    1. If you want patch selected databases in a database home to a specific database home using the odacli update-database command, then create the prepatch report first. Run the patching pre-checks and review the prepatch report. You must run the odacli create-prepatchreport command before you patch your Oracle database; otherwise, the odacli update-database command fails with an error message prompting you to run the patching pre-checks.
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -db -dbid DATABASE_ID -to a68f9947-DB_HOME_ID

      For example, for 19.30:

      [root@oda1 ~]# odacli describe-prepatchreport -i efa93519-a365-4e9a-9f25-ad3c653cccef
      
      Patch pre-check report
      ------------------------------------------------------------------------
                       Job ID: efa93519-a365-4e9a-9f25-ad3c653cccef
                  Description: Patch pre-checks for [SINGLEDB, ORACHKSINGLEDB]: Target DB is db10181, Destination DbHome is OraDB19000_home8
                       Status: SUCCESS
                      Created: January 8, 2026 11:19:03 AM PDT
                       Result: All pre-checks succeeded
      
      Node Name
      ---------------
      node1
      
      Pre-Check Status Comments
      ------------------------------ -------- --------------------------------------
      __SINGLEDB__
      Is system provisioned Success Verified system is provisioned
      Validate dbHomesOnACFS Success User has configured disk group for
      configured Database homes on ACFS
      Validate Oracle base Success Successfully validated Oracle Base
      Evaluate DB clone availability Success Successfully validated clone file
                                                exists
      Evaluate DB patching with RHP Success Successfully validated patching DB
                                                with RHP.
      Validate command execution Success Validated command execution
      
      __ORACHK__
      Running orachk Success Successfully ran Orachk
      Validate command execution Success Validated command execution
      
      Node Name
      ---------------
      node2
      
      Pre-Check Status Comments
      ------------------------------ -------- --------------------------------------
      __SINGLEDB__
      Is system provisioned Success Verified system is provisioned
      Validate dbHomesOnACFS Success User has configured disk group for
      configured Database homes on ACFS
      Validate Oracle base Success Successfully validated Oracle Base
      Evaluate DB clone availability Success Successfully validated clone file
                                                exists
      Evaluate DB patching with RHP Success Successfully validated patching DB
                                                with RHP.
      Validate command execution Success Validated command execution
      
      __ORACHK__
      Running orachk Success Successfully ran Orachk
      Validate command execution Success Validated command execution
    2. If the pre-patch report does not show any errors, then update the databases to the latest release.
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-database -i database_ID/-n database_name -to destination_dbhome_ID

      For example, for 19.30:

      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-database -i c05458c7-0f1d-4260-8e62-003b3ec26d74/-n db10181 -to dc98eaa9-289c-4710-a898-ca6287a07a9c 
      [root@oda1 ~]# odacli describe-job -i d442a7d4-594f-48e2-8b02-9124811bb7b4
      
      Job details
      ----------------------------------------------------------------
                           ID: d442a7d4-594f-48e2-8b02-9124811bb7b4
                  Description: DB Patching: database ID is c05458c7-0f1d-4260-8e62-003b3ec26d74
                       Status: Success
                      Created: January 8, 2026 3:23:43 PM PDT
                      Message:
      
      Task Name Node Name Start Time End Time Status
      ---------------------------------------- ------------------------- ----------------------------------- ----------------------------------- ----------
      Creating wallet for DB Client node1 January 8, 2026 3:24:42 PM PDT January 8, 2026 3:24:42 PM PDT Success
      Patch databases by RHP node1 January 8, 2026 3:24:42 PM PDT January 8, 2026 3:29:34 PM PDT Success
      Updating database metadata node2 January 8, 2026 3:29:34 PM PDT January 8, 2026 3:29:34 PM PDT Success
      Set log_archive_dest for Database node1 January 8, 2026 3:29:34 PM PDT January 8, 2026 3:29:37 PM PDT Success
      Generating and saving BOM node1 January 8, 2026 3:29:37 PM PDT January 8, 2026 3:31:44 PM PDT Success
      Generating and saving BOM node2 January 8, 2026 3:29:37 PM PDT January 8, 2026 3:31:44 PM PDT Success
      TDE parameter update node2 January 8, 2026 3:32:25 PM PDT January 8, 2026 3:32:25 PM PDT Success 
  22. Confirm that the patch jobs are successful:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli list-jobs
  23. If you are patching your appliance from Oracle Database Appliance release 19.11 or earlier, then run the following steps. You must also run these steps if your appliance was previously patched to Oracle Database Appliance release 19.12 or later, but you did not run these steps when patching to release 19.12.
    1. After patching the bare metal systems and database homes, enable NUMA (Non-Uniform Memory Access) on existing databases of release 19.12 or earlier, by running the following SQL*Plus command:
      SQL> alter system set "_enable_numa_support"=true scope=spfile sid='*';

      Restart the database after running the command to ensure that the changes take effect.

      For more information about enabling NUMA, see the topic About Enabling NUMA on Oracle Database Appliance.

    2. If you have deployed DB systems, VMs, or CPU pools, perform the following steps:
      1. Run the odacli remap-cpupools command:
        [root@oda1 opt]# /opt/oracle/dcs/bin/odacli remap-cpupools

        If the odacli remap-cpupools command fails with the error DCS-10001:Internal error encountered: Not enough physical CPUs available for CPU Pool 'cpupool_name' on node 'node_name', run the odacli remap-cpupools command again with the --use_reserved-cores option. For information about the command options, see the chapter Oracle Database Appliance Command-Line Interface for KVM.

      2. If you have DB systems in your deployment, then run the odacli modify-dbsystem command. If you have VMs in your KVM deployment and you want to enable NUMA for the VMs, then run the odacli modify-vm --enable-numa command for VMs. That is:

        For DB systems:

        odacli modify-dbsystem --enable-numa

        For VMs:

        odacli modify-vm --enable-numa

    Note:

    For bare metal systems and DB systems on Oracle Database Appliance X7-2S and X8-2S, the database init.ora parameter _enable_numa_support is set to FALSE even when NUMA is enabled. This is expected because these hardware models are single socket systems.

Patching Oracle Database Appliance DB Systems Using the Command-Line

Follow these steps to apply patches to your Oracle Database Appliance DB system deployment and existing Oracle Database home in the DB system, using CLI commands.

To patch your Oracle Database Appliance DB systems deployment and your existing database homes to the current release, you must download the Oracle Database Appliance Server Patch and update the bare metal system repository.

Note:

Run the commands in this topic in the same order as documented. Run the odacli update-dcsadmin and odacli update-dcscomponents commands before running the odacli update-servercomponents command.

Note:

Public network gateway must be responsive to ping requests. Oracle Clusterware uses the public network gateway as ping target to facilitate the VIP failover in Oracle Database Appliance high-availability environment.
Ensure that you have patched your Oracle Database Appliance bare metal deployment to release 19.30 before you patch your DB system.
Follow these steps to apply patches to your Oracle Database Appliance DB system deployment and update the existing database home in the DB system.
  1. Ensure that the Oracle Database Appliance Server Patch for the ODACLI/DCS stack, Oracle Grid Infrastructure clone files, and Oracle Database clone files are available in the repository. Run the odacli list-availablepatches command in the bare metal system to view whether the clone files are available in the system.
    [root@oda1 opt]# odacli list-availablepatches
  2. Connect to the DB system.
  3. Update DCS admin:
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli update-dcsadmin -v version
    For example, for 19.30:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcsadmin -v 19.30.0.0.0
  4. Update the DCS components:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcscomponents -v version
    For example, for 19.30:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcscomponents -v 19.30.0.0.0

    The odacli update-dcscomponents command updates Oracle HAMI, MySQL, and updates other DCS components such as the DCS framework, DCS CLI, and DCS controller on Oracle Database Appliance.

    Note:

    Note that for DCS framework update to be complete, the odacli update-dcscomponents command must be run. Ensure that both commands are run in the order specified in this procedure.
  5. Run patching pre-checks. You must run the odacli create-prepatchreport command before you patch your server; otherwise, the odacli update-servercomponents command fails with an error message prompting you to run the patching pre-checks.
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -v version

    For example, for 19.30:

    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -sc -v 19.30.0.0.0
  6. Verify that the patching pre-checks ran successfully:
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli describe-prepatchreport -i ID

    For example:

    # odacli create-prepatchreport -v 19.30.0.0.0 -sc 
    
    Job details 
    ----------------------------------------------------------------
    ID: 4500de6d-d2f2-4bf1-bbc1-48b4d56fef0f
    Description: Patch pre-checks for [OS, ORACHKSERVER, SERVER] to 19.30.0.0.0
    Status: Created
    Created: January 22, 2026 10:44:07 PM TOT
    Message: Use 'odacli describe-prepatchreport -i 4500de6d-d2f2-4bf1-bbc1-48b4d56fef0f' to check details of results
    
    Task Name Start Time End Time Status 
    ---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
    
    
    [root@oda1 ~]# odacli describe-prepatchreport -i 7f490943-bb74-4918-93fa-c22a5f0db287
    
    Prepatch Report                                                  
    ------------------------------------------------------------------------
                     Job ID:  7f490943-bb74-4918-93fa-c22a5f0db287
                Description:  Patch pre-checks for [OS, ORACHKSERVER, SERVER] to 19.30.0.0.0
                     Status:  SUCCESS
                    Created:  January 22, 2026 10:44:07 PM TOT
                     Result:  All pre-checks succeeded
    
    Node Name       
    ---------------
    oda1 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __OS__ 
    Validate supported versions     Success   Validated minimum supported versions. 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is patch location available     Success   Patch location is available.          
    Verify OS patch                 Success   No dependencies found for RPMs being  
                                              removed, updated and installed. Check 
                                              /opt/oracle/dcs/log/jobfiles/         
                                              yumdryrunout_2025-11-22_22-45-        
                                              00.0551_475.log file for more details 
    Validate command execution      Success   Validated command execution           
    
    __ORACHK__ 
    Running orachk                  Success   Successfully ran Orachk               
    Validate command execution      Success   Validated command execution           
    
    __SERVER__ 
    Validate local patching         Success   Successfully validated server local   
                                              patching                              
    Validate all KVM ACFS           Success   All KVM ACFS resources are running    
    resources are running                                                           
    Validate DB System VM states    Success   All DB System VMs states are expected 
    Enable support for Multi-DB     Success   No need to convert the DB System      
    Validate DB System AFD state    Success   AFD is not configured                 
    Validate command execution      Success   Validated command execution           
    
    Node Name       
    ---------------
    oda2 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __OS__ 
    Validate supported versions     Success   Validated minimum supported versions. 
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is patch location available     Success   Patch location is available.          
    Verify OS patch                 Success   No dependencies found for RPMs being  
                                              removed, updated and installed. Check 
                                              /opt/oracle/dcs/log/jobfiles/         
                                              yumdryrunout_2025-11-22_22-45-        
                                              22.0636_341.log file for more details 
    Validate command execution      Success   Validated command execution           
    
    __ORACHK__ 
    Running orachk                  Success   Successfully ran Orachk               
    Validate command execution      Success   Validated command execution           
    
    __SERVER__ 
    Validate local patching         Success   Successfully validated server local   
                                              patching                              
    Validate all KVM ACFS           Success   All KVM ACFS resources are running    
    resources are running                                                           
    Validate DB System VM states    Success   All DB System VMs states are expected 
    Enable support for Multi-DB     Success   No need to convert the DB System      
    Validate DB System AFD state    Success   AFD is not configured                 
    Validate command execution      Success   Validated command execution           

    Use the command odacli describe-prepatchreport to view details of the pre-patch report. Fix the warnings and errors mentioned in the report and proceed with the server patching.

  7. Apply the server update. Note that you can use the --local option with the odacli update-servercomponents command to update the local node.
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli update-servercomponents -v version

    For example, for 19.30:

    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli update-servercomponents -v 19.30.0.0.0

    You can use the -f option to override precheck failures and complete the server patching.

  8. Confirm that the server update is successful:
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli describe-job -i job_ID
  9. Before you update the Oracle Grid Infrastructure home, run the odacli create-prepatchreport command with the -gi option.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -gi -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport -gi -v 19.30.0.0.0
  10. Verify that the patching pre-checks ran successfully:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-prepatchreport

    For example:

    [root@oda1 ~]# odacli create-prepatchreport  -v 19.30.0.0.0 -gi
    
    Job details                                                      
    ----------------------------------------------------------------
                         ID:  67b03a56-a5a1-4aec-8342-2d0e040e15e5
                Description:  Patch pre-checks for [RHPGI, GI] to 19.30.0.0.0
                     Status:  Created
                    Created:  January 14, 2026 10:27:15 PDT
                    Message:  Use 'odacli describe-prepatchreport -i 67b03a56-a5a1-4aec-8342-2d0e040e15e5' to check details of results
    
    Task Name                                Start Time                               End Time                                 Status          
    ---------------------------------------- ---------------------------------------- ---------------------------------------- ----------------
    
    # odacli describe-prepatchreport -i c6a3cf36-71bd-4420-bcc8-4c26dfb496fc
    
    Prepatch Report                                                  
    ------------------------------------------------------------------------
                     Job ID:  c6a3cf36-71bd-4420-bcc8-4c26dfb496fc
                Description:  Patch pre-checks for [RHPGI, GI] to 19.30.0.0.0
                     Status:  SUCCESS
                    Created:  January 23, 2026 6:42:22 AM TOT
                     Result:  All pre-checks succeeded
    
    Node Name       
    ---------------
    oda1 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __RHPGI__ 
    Evaluate GI patching            Success   Successfully validated GI patching    
    Validate command execution      Success   Validated command execution           
    
    __GI__ 
    Validate GI metadata            Success   Successfully validated GI metadata    
    Validate supported GI versions  Success   Successfully validated minimum version
    Validate available space        Success   Validated free space under /u01       
    Is clusterware running          Success   Clusterware is running                
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is system provisioned           Success   Verified system is provisioned        
    Validate BM versions            Success   Validated BM server components        
                                              versions                              
    Validate kernel log level       Success   Successfully validated the OS log     
                                              level                                 
    Validate minimum agent version  Success   GI patching enabled in current        
                                              DCSAGENT version                      
    [root@oda1 ~]# odacli describe-prepatchreport -i c6a3cf36-71bd-4420-bcc8-4c26dfb496fc
    
    Prepatch Report                                                  
    ------------------------------------------------------------------------
                     Job ID:  c6a3cf36-71bd-4420-bcc8-4c26dfb496fc
                Description:  Patch pre-checks for [RHPGI, GI] to 19.30.0.0.0
                     Status:  SUCCESS
                    Created:  January 23, 2026 6:42:22 AM TOT
                     Result:  All pre-checks succeeded
    
    Node Name       
    ---------------
    oda1 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __RHPGI__ 
    Evaluate GI patching            Success   Successfully validated GI patching    
    Validate command execution      Success   Validated command execution           
    
    __GI__ 
    Validate GI metadata            Success   Successfully validated GI metadata    
    Validate supported GI versions  Success   Successfully validated minimum version
    Validate available space        Success   Validated free space under /u01       
    Is clusterware running          Success   Clusterware is running                
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.  
    Is system provisioned           Success   Verified system is provisioned        
    Validate BM versions            Success   Validated BM server components        
                                              versions                              
    Validate kernel log level       Success   Successfully validated the OS log     
                                              level                                 
    Validate minimum agent version  Success   GI patching enabled in current        
                                              DCSAGENT version                      
    Validate Central Inventory      Success   oraInventory validation passed        
    Validate patching locks         Success   Validated patching locks              
    Validate clones location exist  Success   Validated clones location             
    Validate command execution      Success   Validated command execution           
    
    Node Name       
    ---------------
    oda2 
    
    Pre-Check                      Status   Comments                              
    ------------------------------ -------- -------------------------------------- 
    __RHPGI__ 
    Validate command execution      Success   Validated command execution           
    
    __GI__ 
    Validate GI metadata            Success   Successfully validated GI metadata    
    Validate supported GI versions  Success   Successfully validated minimum version
    Validate available space        Success   Validated free space under /u01       
    Is clusterware running          Success   Clusterware is running                
    Validate patching tag           Success   Validated patching tag: 19.30.0.0.0.          

    Fix the warnings and errors mentioned in the report and proceed with the patching operation.

  11. Update the Oracle Grid Infrastructure home and components. Note that you can use the --local option with the odacli update-gihome command to update the local node.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-gihome -v version

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-gihome -v 19.30.0.0.0
  12. To patch existing Oracle Database Homes to release 19.30:

    WARNING:

    When you patch your deployment from Oracle Database Appliance release 19.29 to Oracle Database Appliance release 19.30, if you see the error DCS-10315 - Patch described in My Oracle Support Note KB867473 must be applied. in the prepatch report, ensure that you follow the procedure described in My Oracle Support Note KB867473, and then use the --force option with the odacli update-database or odacli update-dbhome command.
    1. On the bare metal system, run the command odacli describe-dbsystem-image to check that the repository is updated with the required Oracle Database clone files. If the database clone file is not displayed in the command output, then run the command odacli update-repository on the bare metal system to update the repository with the database clone files:
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/DB_software_file
      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/odacli-dcs-19.30.0.0.0-date-DB-19.30.0.0.zip
    2. Run the patching pre-checks and review the prepatch report. You must run the odacli create-prepatchreport command before you patch your Oracle Database homes; otherwise, the odacli update-dbhome command fails with the error message prompting you to run the patching pre-checks.
      [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport --dbhome --dbhomeid DB_Home_ID -v release_number
      [root@dbsystem1 opt]# odacli describe-prepatchreport -i Job_ID
      [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli create-prepatchreport --dbhome --dbhomeid 7c67c5b4-f585-4ba9-865f-c719c63c0a6e -v 19.30.0.0.0
      [root@dbsystem1 opt]# odacli describe-prepatchreport -i 39ef1eeb-70d3-47ad-b3f5-48960ca0607b
      Alternatively, you can use the odacli update-database to update the databases in your deployment:
      [root@dbsystem1 opt]# odacli create-prepatchreport --database --database-id database_ID --to-home dest_dbhome_ID 
      [root@dbsystem1 opt]# odacli update-database --id database_ID --to-home dest_dbhome_ID
    3. If there are no errors, then update the database home to the latest release. You need not use the -f option with the odacli update-dbhome command. Note that you can use the --local option with the odacli update-dbhome command to update the local node. You can also use the --node option to specify the node containing the database to update.
      [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli update-dbhome --id DB_Home_ID -v release_number

      For example, for 19.30:

      [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli update-dbhome --id 7c67c5b4-f585-4ba9-865f-c719c63c0a6e -v 19.30.0.0.0
  13. Confirm that the patch jobs are successful:
    [root@dbsystem1 opt]# /opt/oracle/dcs/bin/odacli list-jobs

Patching Oracle Database Appliance Bare Metal Systems Using the Browser User Interface

Upload the Oracle Database Appliance Server Patch to the patch repository, deploy the patch bundle, and then update the DCS admin, DCS components, server, and storage using BUI.

Updating the Patch Repository Using the Browser User Interface (BUI)

  1. Download the Oracle Database Appliance patches from My Oracle Support and save them in a directory on the appliance. See the Oracle Database Appliance Release Notes for a list of available patches and links to download the patches.

  2. Log into the Browser User Interface.

    https://Node0–host-ip-address:7093/mgmt/index.html
  3. Click Repository Manager.

  4. In the Update Patch Repository page, enter the absolute file path and patch name, then click Update Repository to start the update repository job. You can list more than one file to update to the repository with a comma separated list, without spaces, or you can update each file, one at a time.

  5. Click Activity to monitor the progress. When the job completes successfully, the Patch Repository is updated.

Updating the DCS Admin and DCS Components, Running Patching Prechecks, and Patching Server and Storage Using BUI

  1. Do not have any jobs running or pending during the update window.

  2. In the BUI, click the Appliance tab, and then click Infrastructure Patching on the lefthand pane.

  3. In the DCSADMIN section, view the Component Details. If you just updated the Patch Repository, click Refresh.

    After the patch is uploaded to the Patch Repository, the Component Details on the page are updated with the Installed Version and Available Version for each component.

  4. Click Apply Patch to update the DCS admin. When prompted to confirm the update, click Update.

    When the job finishes, go to the next step. Click View Jobs for the job status.

  5. In the DCSCOMPONENTS section, view the Component Details. If you just updated the Patch Repository, click Refresh.

    After the patch is uploaded to the Patch Repository, the Component Details on the page are updated with the Installed Version and Available Version for each component.

  6. Click Apply Patch to update the DCS components. When prompted to confirm the update, click Update.

    When the job finishes, go to the next step. Click View Jobs for the job status.

  7. In the SERVERCOMPONENTS section, view the Component Details. If you just updated the Patch Repository, click Refresh. Click Precheck to run patching prechecks. You must run the patching prechecks before updating the server components. Select the Rollback on Failure checkbox to rollback the updates if the job fails. Click View Pre-Check Reports to view the patching prechecks report. If there are no errors in the report, then click Apply Patch to begin the job to patch the server components. Select the Rollback on Failure checkbox to rollback the updates if the job fails.

    For high-availability systems, when updating the server on the bare metal system, you can select the Node to Update. You can choose the node that you want to update or you can choose to update both nodes.

    When the job finishes, go to the next step. Click View Jobs for the job status.

  8. In the GI section, click Refresh to refresh the Oracle Grid Infrastructure details. Click Precheck to run patching prechecks. You must run the patching prechecks before updating the storage components. Click View Pre-Check Reports to view the patching prechecks report. If there are no errors in the report, then click Apply Patch to begin the job to patch the Oracle Grid Infrastructure components.

    Select the Force Run check box to ignore errors and apply the patch. Select the Ignore CVU Postcheck Failures check box to ignore CVU failures. Click Update.

    Click View Jobs for the job status.

  9. In the STORAGE section, click Refresh to refresh the Component Details. Click Precheck to run patching prechecks. You must run the patching prechecks before updating the storage components. Click View Pre-Check Reports to view the patching prechecks report. If there are no errors in the report, then click Apply Patch to begin the job to patch the storage components. When prompted to confirm the update, click Update. Click View Jobs for the job status.

    For high-availability environment, you can select the Rolling check box to perform rolling patching of storage components.

Patching Oracle Database Appliance DB Systems Using the Browser User Interface

Upload the Oracle Database Appliance Server Patch to the patch repository, deploy the patch bundle using the Browser User Interface, and then update the DCS admin and components using CLI commands.

Updating the Patch Repository Using the Browser User Interface

  1. Download the Oracle Database Appliance patches from My Oracle Support and save them in a directory on the appliance. See the Oracle Database Appliance Release Notes for a list of available patches and links to download the patches.

  2. Log into the Browser User Interface within the bare metal system, with the oda-admin user name and password.

    https://Node0–host-ip-address:7093/mgmt/index.html
  3. Click the Appliance tab, and then click Infrastructure Patching on the lefthand pane.

  4. In the Update Repository tab, on the Update Patch Repository page, enter the absolute file path and patch name, then click Update Repository to start the update repository job. You can list more than one file to update to the repository with a comma separated list, without spaces, or you can update each file, one at a time.

  5. Click Activity to monitor the progress. When the job completes successfully, the Patch Repository is updated.

Updating the DCS Admin and DCS Components After Updating the Repository and Before Patching

Before patching your DB system using the Browser User Interface, you must update the DCS admin and DCS components manually, through ODACLI commands.

Follow these steps:

  1. In the BUI, click Appliance and then click Infrastructure Patching on the lefthand pane.
  2. Using ODACLI, update the DCS admin and DCS components:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcsadmin  -v 19.30.0.0.0
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-dcscomponents -v 19.30.0.0.0
    If the DCS components are updated, then the message "status" : "Success" is displayed on the command line. For failed updates, fix the error and then proceed with the update.

    Note:

    You must log into the Browser User Interface again after running the odacli update-dcscomponents command.

Running Patching Prechecks and Patching Server and Storage Components Using the Browser User Interface

  1. Do not have any jobs running or pending during the update window.

  2. Log into the Browser User Interface within the DB system with the oda-admin user name and password.

    https://Node0–host-ip-address:7093/mgmt/index.html
  3. Click the Appliance tab, and then click Infrastructure Patching on the lefthand pane.

  4. In the SERVERCOMPONENTS section, view the Component Details. If you just updated the Patch Repository, click Refresh.

    After the patch is uploaded to the Patch Repository, the Component Details on the page are updated with the Installed Version and Available Version for each component.

  5. Click Precheck to run patching prechecks. You must run the patching prechecks before updating the server and other components. Click View Pre-Check Reports to view the patching prechecks report. If there are no errors in the report, then click Apply Patch to begin the job to patch the server components. For high-availability systems, when updating the server on the bare metal system, you can select the Node to Update. You can choose the node that you want to update or you can choose to update both nodes.

    When the job finishes, go to the next step. Click View Jobs for the job status.

  6. In the GI section, click Refresh to refresh the Oracle Grid Infrastructure details. Click Precheck to run patching prechecks. You must run the patching prechecks before updating the storage components. Click View Pre-Check Reports to view the patching prechecks report. If there are no errors in the report, then click Apply Patch to begin the job to patch the Oracle Grid Infrastructure components.

    Select the Force Run check box to ignore errors and apply the patch. Select the Ignore CVU Postcheck Failures check box to ignore CVU failures. Click Update.

    Click View Jobs for the job status.

  7. In the STORAGE section, click Refresh to refresh the Component Details. Click Precheck to run patching prechecks. You must run the patching prechecks before updating the storage components. Click View Pre-Check Reports to view the patching prechecks report. If there are no errors in the report, then click Apply Patch to begin the job to patch the storage components. Click View Jobs for the job status.

    For high-availability environment, you can select the Rolling check box to perform rolling patching of storage components.

  8. Click Activity to monitor the progress, and verify that the job completes successfully.

Updating Oracle Database Appliance Repository with Database Clone Files For Bare Metal Systems

Follow these steps to update the Oracle Database Appliance repository with Oracle Database clone files for the latest release using CLI commands.

To create new databases of a specific release version, you must update the Oracle Database Appliance repository with the Oracle Database clone files for a release. Follow these steps to update the repository with Oracle Database clone files for the latest release.
  1. Download the Oracle Database clone software file for a release, for example, p30403662_1930000_Linux-x86-64.zip, and extract the Oracle Database clone software:
    For example, download the Oracle Database clone software patch for 19.30:
    unzip /tmp/p30403662_1930000_Linux-x86-64.zip
    odacli-dcs-19.30.0.0.0-date-DB-19.30.0.0.zip
  2. Copy all the software files from the external client to Oracle Database Appliance. For High-Availability deployments, copy the software files to only one node. The software files are copied to the other node during the patching process. Use the scp or sftp protocol to copy the bundle.
    Example using scp command:
    # scp software_file root@oda_host:/tmp
    Example using sftp command:
    # sftp root@oda_host
    Enter the root password, and copy the files.
    put software_file
  3. Update the repository with latest release database software:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/odacli-dcs-db-clone-file.zip/

    For example, for 19.30:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository -f /tmp/odacli-dcs-19.30.0.0.0-date-DB-19.30.0.0.zip
    Follow the same steps to update the repository with the database clone software for other supported database versions.
  4. Confirm that the repository update is successful:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli list-jobs
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-job -i job_ID
  5. Delete the software zip files from the temporary location on the appliance to save space:
    [root@oda1 opt]# rm software_file
    rm: remove regular file software_file? y

Patching Databases Using ODACLI Commands or the BUI

Use ODACLI commands or the Browser User Interface to patch databases to the latest release in your deployment.

Before patching the database home, upload the Oracle Database clone files for the database version, to the repository. See Updating Oracle Database Appliance Repository with Database Clone Files Using the CLI for the procedure to update the repository with the latest Oracle Database clone files.

Important:

You must run the odacli create-prepatchreport command before you patch the Oracle databases; otherwise, the odacli update-database command fails with an error message prompting you to run the patching pre-checks.

Patching Databases on Oracle Database Appliance using ODACLI Commands

Run the following command to patch a database using the CLI:

odacli update-database [-a] [-dp] [-f] [-i db_id] [-imp] [-l] [-n db_name] [-ni node] [-r] [-to db_home_id] [-j] [-h]

For more information about the options for the update-database command, see the chapter Oracle Database Appliance Command-Line Interface.

Patching Databases on Oracle Database Appliance using BUI

  1. Log into the Browser User Interface with the oda-admin user name and password.
    https://Node0–host-ip-address:7093/mgmt/index.html
  2. Navigate to the Database tab.
  3. Select the database you want to patch.
  4. Click Update.
  5. If you select Apply Data Patch, then the Data Patch for the specified database is applied and you cannot select any other options.
  6. On a high-availability system, you can also select the node in the Select Node to Update list.
  7. Select Ignore Missing Patches to ignore missing patches.
  8. Select Force Run to force the operation to run.
  9. Select the destination database home.
  10. In the Patching Options
    • Abort: To abort previously unfinished or failed patching operation.
    • Revert: To revert previously unfinished or failed patching operation.
    • None: To patch the database.
  11. Click Update.
  12. If you have not run the pre-checks earlier, then an error is displayed when you submit the job to update the database.
  13. In the Database page, select the Database and then click Precheck to run pre-checks for patching the database.
    Click Activity for job status.
  14. In the Database page, for the database to be patched, click Actions and select View Pre-patch reports to view the pre-check report. Fix any errors, and then select Action as Apply to patch the database.
  15. Verify that the patching job completes successfully.

Patching Existing Database Homes Using ODACLI or the BUI

Use ODACLI or BUI to patch database homes in your deployment to the latest release.

Before patching the database, upload the Oracle Database clone files for the database version, to the repository. See Updating Oracle Database Appliance Repository with Database Clone Files Using the CLI for the procedure to update the repository with the latest Oracle Database clone files.

Patching Database Homes on Oracle Database Appliance using ODACLI Commands

Run the following command to patch a database home using the CLI:

odacli update-dbhome -i dbhome_id -v version [-f] [-imp] [-p] [-l] [-u node_number] [-j] [-h]

For more information about the options for the update-dbhome command, see the chapter Oracle Database Appliance Command-Line Interface.

Patching Database Homes on Oracle Database Appliance using BUI

  1. Log into the Browser User Interface with the oda-admin user name and password.
    https://Node0–host-ip-address:7093/mgmt/index.html
  2. Navigate to the Database Home tab.
  3. Select the database home you want to patch.
  4. Select the Patch Version for the database home.
  5. To patch multiple database homes, select each database home to be patched and the patch version for each database home.
  6. Select the Node to Update. You can choose the node that you want to update or you can choose to update all nodes.
  7. Click Patch. Select Precheck to run pre-checks before patching the database.
    Click Activity for job status.
  8. On the Patch page, for the database to be patched, click Actions and select View Pre-patch reports to view the pre-check report. Fix any errors, and then select Action as Apply to patch the database.
  9. Select Ignore Precheck Failures to ignore failures reported in the prechecks reported. It is recommended that you fix errors reported in the precheck results.
  10. Select Ignore Missing Patches to ignore missing patches.
  11. Verify that the patching job completes successfully.

Patching Non-Provisioned Oracle Database Appliance Systems

Oracle Database Appliance supports patching of non-provisioned single-node or high availablity systems by running odacli update-servercomponents command.

A non-provisioned Oracle Database Appliance system does not have Oracle Grid Infrastructure or Oracle Database installed or running on it. You can upgrade Oracle ILOM and storage firmware on an unprovisioned system without running the odacli create-appliance command by reimaging the system using the bare metal ISO image of Oracle Database release 19.26 or later. Then patch the system with the server patches of the same release as the bare metal ISO image by running the odacli update-servercomponents command. When you reimage your system, the DCS infrastructure is updated automatically.
Follow these steps to update the firmware:
  1. Reimage the Oracle Database Appliance using the bare metal ISO image for Oracle Database Appliance release 19.29 or later.
  2. Update the repository with the server patch for the Oracle Database Appliance release you want to patch to, for example 19.29 or later.
  3. For running odacli update-servercomponents on Oracle Database Appliance imaged with ISO of release 19.29:
    odacli update-servercomponents -v 19.29.0.0.0 -sko -f

    For Oracle Database Appliance release 19.29 or later, you can use the -sko option to skip ORAchk failures and proceed with the server patching, and the -f option to override precheck failures and complete the server patching.

Applying Additional Patches and Updates on Bare Metal Systems

Configure additional patch repositories and patch your operating system and databases to ensure that your deployment has the latest updates and security fixes.

Enabling Kernel Updates

Oracle Ksplice enables you to update your systems with the latest kernel security and bug fix updates.

You can download and install the latest Oracle Ksplice updates (uptrack-updates) with either the local ULN repository or ULN channel.
Follow these steps to install Oracle KSplice:
  1. Register your server with Unbreakable Linux Network (ULN). By default, you are registered for the Oracle Linux Latest channel for your operating system and hardware.
  2. Log in to Unbreakable Linux Network:
  3. Ensure that you have access to the Internet on the server where you want to use Ksplice. For example, if you are using a proxy server, then set the proxy server and port values in the shell with commands similar to the following:
    # export http_proxy=http://proxy.company.com:port
    # export https_proxy=http://proxy.company.com:port
  4. Register the server:
    # uln_register
  5. Set up the local repository as described in the Oracle Ksplice user documentation. This enables you to download the latest Ksplice update packages at regular intervals without requiring a direct connection to the Oracle Uptrack server or to ULN.
  6. To update a system to a specific effective kernel version, install the uptrack-updates package for the current kernel.
    yum -y install uptrack-updates-'uname -r'
    You can also download the uptrack-updates RPM from the Ksplice channel and install the RPM manually. For example:
    # rpm -Uvh uptrack-updates-4.14.35-1902.11.3.1.el7uek.x86_64-20200325-0.noarch.rpm

See Also:

Oracle Linux Ksplice User's Guide for information about configuring Oracle Ksplice at:

https://docs.oracle.com/en/operating-systems/oracle-linux/

Applying Out-of-Cycle Database Patches

The out-of-cycle patching feature enables administrators to patch databases in the Oracle Database Appliance deployment with the latest Oracle Database Release Update, outside of the Oracle Database Appliance releases.

You can apply Oracle Database Release Update (RU) patches manually using OPatch. Refer to the relevant section in this topic to run the OPatch for your database version.

Note:

The OPatch commands and procedures described in this topic are examples, and may need modifications based on a specific Oracle Database Release Update (RU). Always refer to the Readme of the Oracle Database Release Update (RU) for additional commands and steps.

Note:

It is strongly recommended that you patch your deployment through the Oracle Database Appliance releases, whenever possible.

Note:

You can apply out-of-cycle patches to baremetal and DB system deployments using this procedure.

Using OPatchauto to Manually Patch Oracle Database Release 12c and Later

  1. Confirm that the dcs-agent and other components are updated to the latest release.
    # odacli describe-component
    # odacli list-dbhomes
  2. Update OPatch to the latest version, if available:
    1. Download the latest OPatch version from My Oracle Support.
    2. Copy the files to the local host and extract them to the ORACLE_HOME/OPatch directory.
    3. Update the OPatch tool as oracle user.
      /bin/rm -rf $ORACLE_HOME/OPatch/
      su - oracle -c /usr/bin/unzip -q -o OPatch_zip_location/p6880880_122010_Linux-x86-64.zip -d $ORACLE_HOME
  3. Download the latest database patches from My Oracle Support and copy the files to the local host.
    scp patchfilename root@hostname:directory
  4. Unzip patches to an empty directory, for example, /tmp/patchesDir as oracle user.

    This creates sub directories under /tmp/patchesDir with bug numbers. If the patch you are applying is a Release Update (RU), then the patch directory has multiple sub-directories.

    /usr/bin/unzip -o location_of_patches/p29301631_180000_Linux-x86-64.zip -d /tmp/patchesDir
  5. For Oracle Database Appliance High-Availability deployments, set up SSH Keys for secure connection.
  6. Analyze the patches.
    $ORACLE_HOME/OPatch/opatchauto apply directory_with_patches_extracted -analyze -oh $ORALCE_HOME -log /tmp/opatchAutoAnalyzePatch.log
  7. As root user, apply the patches.
    $ORACLE_HOME/OPatch/opatchauto apply directory_to_extract_patches -oh $ORACLE_HOME -inplace
  8. When patching is completed on both nodes, run utlrp.sql and catcon.pl scripts to recompile invalid objects in the database.
  9. Update the registry to ensure that system component values are registered.
    # odacli update-registry -n dbhome -f

Cleaning Up the Patch Repository

Use the Browser User Interface or Command Line Interface to delete obsolete or old patches from the repository.

About Cleaning Up the Patch Repository

After patching Oracle Database Appliance with the latest patches, old unused clone files may remain and consume space in the repository. Cleanup repository deletes the unused clone/patch files to reclaim space. You can clean up the repository using the Browser User Interface or ODACLI commands.

Cleaning Up the Patch Repository Using ODACLI command

# odacli cleanup-patchrepo [-cl clones] | [-v version [-comp component]]| [-l local|-n NodeID]

Specify the clone file names and the node from which you want to delete the old patches.

For details about the command options, see the chapter Oracle Database Appliance Command-Line Interface.

Cleaning Up the Patch Repository Using the Browser User Interface

Follow these steps to clean up the patch repository:
  1. In the Browser User Interface, click Patch Manager.
  2. Click the Cleanup Repository tab, and then click Refresh to list the available patches in the repository.
  3. Select the Components, such as old Oracle Grid Infrastructure or Oracle Database clone files that you want to clean up from the repository, and the Patch Version, for example, an older release of Oracle Database Appliance.
  4. Click Cleanup Clone Files to clean up clone files for selected components from the repository at /opt/oracle/oak/pkgrepos/orapkgs/clones/.
  5. Click Cleanup Repository to submit the cleanup repository job.
  6. Click Activity to monitor the progress. When the job completes successfully, the Patch Repository is updated.

Related Topics

About Upgrading Oracle Databases on Oracle Database Appliance

Understand how to upgrade databases using either the Browser User Interface or odacli commands.

Prerequisites for Upgrading Databases

Before upgrading databases, upload the Oracle Database clone files for the database version, to the repository, and then create the database home. See Patching Oracle Database Appliance Using the CLI for the procedure to update the repository with the latest Oracle Database clone files.

About Upgrading Databases Using the Browser User Interface

Follow these steps to upgrade a database using the Browser User Interface.

  1. Log into the Browser User Interface with the oda-admin user name and password.
    https://Node0–host-ip-address:7093/mgmt/index.html
  2. Click the Database tab, and then select a database, click Actions, and then click Upgrade.
  3. Verify that the database upgrade job completes successfully.

About Upgrading Databases Using the Command-Line Interface

Run the following command to upgrade a database using the CLI:
odacli upgrade-database -i Comma separated list of database ids -from source dbhome id -to destination dbhome id [-j] [-h]

For more information about the options for the upgrade-database command, see the chapter Oracle Database Appliance Command-Line Interface.

Setting Dynamic Default Parameters

You can set dynamic default parameters using the BUI.

Setting Dynamic Default Parameters Using the Browser User Interface

Follow these steps:
  1. From the Appliance page, click Parameter Repository.
  2. The Parameter Repository page lists all the parameters in the repository. Currently, parameters of type RDBMS are supported.
  3. Select Update Parameter to create a new configuration property.
  4. In the Update Parameter page, specify the Parameter Name and Value, and provide an optional Description. Specify whether you want to create the parameter for the Bare Metal or DB System. You can also specify the whether the parameter applies to All DB Systems or you can select the DB system for which you want to create the parameter.
  5. Click OK.
  6. Confirm the action to submit the job. Monitor the job progress and check that it completes successfully.
  7. To update a parameter, select the Update option from the Actions menu.
  8. You can edit the Value, Description, and select whether the parameter applies to Bare Metal or DB System. You can also select the DB system for which you want to update the parameter or choose to apply the parameter to All DB Systems.
  9. Click Update.
  10. To delete a parameter, select the Delete option from the Actions menu. You can delete the parameter from the Bare Metal or DB System. You can also select the DB system for which you want to delete the parameter or choose to delete the parameter from All DB Systems.
  11. Click Delete.