7 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.

About Oracle Database Appliance Patch Bundles

The Oracle Database Appliance Patch Bundle contains the latest patches for DCS Agent, DCS Controller, OAK, GI, RDBMS homes, 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 the Oracle Database Appliance Release Notes for the upgrade paths.

Caution:

Do not patch Oracle Database Appliance using individual patches for Oracle Grid Infrastructure, Oracle Database, 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 Oracle Database Appliance inventory is not updated, and you cannot complete future patch updates.

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

  • BIOS

  • Hardware drivers

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

  • Oracle Appliance Manager

  • Oracle Linux

  • Oracle VM Server

  • Java Development Kit (JDK)

  • Oracle Integrated Lights Out Manager (Oracle ILOM)

  • Oracle Database Bundle Patch (BP) and Oracle Database Patch Set Update (PSU)

  • Oracle Auto Service Request (Oracle ASR)

  • Oracle Grid Infrastructure

  • Intelligent Platform Management Interface (IPMI)

  • Network Card Patches for relevant hardware models

About Network Card and Firmware Patching

On Oracle Database Appliance X7-2 hardware models, when connected to 10G/Fiber network, the error "No Link" is encountered. To fix this issue, the network card patch is included in the Oracle Database Appliance Bundle Patch for 18.3. No separate update or patch is required.

About Updating Oracle Linux RPMs

While not recommended, you can update some Oracle Linux RPMs for database nodes. 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.

Caution:

For database nodes, do not update the following:

  • Oracle Linux Kernel (kernel*)

  • Oracle Optimal Flexible Architecture (ofa*)

  • Oracle InfiniBand-related packages (ofed*)

For storage, do not apply any RPM updates.

About Using a Different Version of Java Development Kit (JDK)

Oracle Database Appliance depends on a specific version of JDK. If you want to use a different version of JDK for a specific application, then install it in a different directory and only point to it for that application.

About Migrating Oracle Database Appliance to the DCS Stack

When you apply the patches for this release, your bare metal deployments of Oracle Database Appliance are migrated from the OAK stack to the DCS stack.

No additional configuration steps are required. You migrate the Oracle Database Appliance bare metal system to the DCS stack when you apply the latest patches.

Note:

When you migrate Oracle Database Appliance bare metal system to the DCS stack, the Database Class is set to Online Transaction Processing (OLTP) and the Database Shape is set to odb1, by default.

See ODACLI Command Reference for OAKCLI Migration for the equivalent ODACLI and OAKCLI commands.

About Update Pre-Checks

Update pre-checks are designed to detect problems that might be encountered during patching and flag those issues.

The pre-checks 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.

The pre-checks commands are available on Oracle Database Appliance release 12.2.1.2.0 or later. Update the DCS agent to support the pre-checks commands.

Note:

Patching pe-checks are available only when patching ODACLI stack. If you are patching and migrating from OAKCLI to ODACLI stack for bare metal system, then follow the procedure in the topic Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line. For patching Virtualized Platform, see the topic Patching Oracle Database Appliance Virtualized Platform.

Components Verified by Patching Pre-Checks

Check Component Verified
System update pre-checks

Checks that the agent is online on all nodes

Checks that there is sufficient space for the update

Validates the minimum agent version and validates the patching tag

Confirms that a valid patch is in the repository and calculates the patch bundle md5 checksum

Server update pre-checks

Confirms that Oracle Grid Infrastructure patch is installed

Confirms that Oracle Clusterware is running on all nodes

Performs a check for required components using opatch prereq checkcomponents

Analyzes the patch using opatchauto

Performs a patch conflict check

Checks the available disk space

Confirms that the yum repository directory exists

Performs a yum check and yum check-update

Performs a test (dry run) yum update to check for dependencies in the RPMS

DBHome update pre-checks

Confirms that the Oracle Grid Infrastructure is installed

Confirms that Oracle Clusterware is running on all nodes

Confirms that the Oracle Grid Infrastructure is upgraded before upgrading other components

Validates that there is sufficient space available in local mount

Performs a check for required components using opatch prereq checkcomponents

Analyzes the patch using opatchauto

Performs a patch conflict check and determines if a rollback of database patches is required

Storage pre-checks

Validates storage patch location and tag

Validates Oracle ASM disk groups status

Running Update Pre-Checks Before Applying Patches

After updating the repository with patches, use the pre-checks to reduce potential update problems, and then apply patches.

Note:

Follow the procedure in this topic only when patching ODACLI stack. If you are patching and migrating from OAKCLI to ODACLI stack for bare metal system, then follow the procedure in the topic Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line. For patching Virtualized Platform, see the topic Patching Oracle Database Appliance Virtualized Platform.
  1. Run the create-prepatchreport command to generate a pre-check report.
    odacli create-prepatchreport -s -v release_number
  2. Run the describe-prepatchreport command to display the pre-check report.
    odacli describe-prepatchreport -i job_ID

Patching Oracle Database Appliance Using the Web Console

Upload Oracle Database Appliance Patch Bundle to the patch repository, and deploy the patch bundle using the Web Console.

Note:

Follow the procedure in this topic only when patching ODACLI stack. If you are patching and migrating from OAKCLI to ODACLI stack for bare metal system, then follow the procedure in the topic Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line. For patching Virtualized Platform, see the topic Patching Oracle Database Appliance Virtualized Platform.

Updating the Patch Repository Using the Web Console

  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 Web Console with the oda-admin user name and password.

    https://Node0–host-ip-address:7093/mgmt/index.html
  3. Click Patch 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.

Running Update Prechecks and Patching Agent, Server, and Storage Using the Web Console

Note:

If your appliance has two nodes, you have the option to update both nodes at the same time or individually. If updating individually, update Node0 before updating Node1.
  1. Do not have any jobs running or pending during the update window.

  2. Click the Appliance tab, and then click Patch Manager in the Web Console.

  3. Wait for the Component Details to load. If you just updated the Patch Repository, click Refresh in the Component Details section of the page.

    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. Select Precheck, click Update Components, then click Submit to verify the patches in the repository and check for conflicts.

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

  5. On the Patch Manager page, click Refresh to refresh the Component Details. Select Update Server, click Update Components, then click Submit to begin the job to patch the server components.

    For multi-node systems, select the node to update: All Nodes (default), Node0, or Node1.

    The DCS agent is automatically updated whenever the Server or Storage components are updated.

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

  6. On the Patch Manager page, click Refresh to refresh the Component Details. Select Update Storage, click Update Components, then click Submit to begin the job to patch the storage components.

    For multi-node systems, select the node to update: All Nodes (default), Node0, or Node1.

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

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

All patching-related information is logged in the dcs-agent log file at /opt/oracle/dcs/log/dcs-agent.log.

Patching Database Homes to the Latest Release

Use the Web Console to upgrade database homes to the latest release.

Note:

Follow the procedure in this topic only when patching ODACLI stack. If you are patching and migrating from OAKCLI to ODACLI stack for bare metal system, then follow the procedure in the topic Patching Oracle Database Appliance Bare Metal Systems Using the Command-Line. For patching Virtualized Platform, see the topic Patching Oracle Database Appliance Virtualized Platform.
Before upgrading to a different database home, upload the RDBMS 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 RDBMS Clone Files.
  1. Log into the Web Console with the oda-admin user name and password.
    https://Node0–host-ip-address:7093/mgmt/index.html
  2. Click the Database tab, and then click Patch on the left pane.
  3. Click Patch, and then select the Action as Precheck to run pre-checks before patching the database.
    Click Activity for job status.
  4. On the Patch page, for the database to be patched, click View and select Pre-patch reports to view the pre-check report. Fix any errors, and then select Action as Apply to patch the database.
  5. Verify that the patching job completes successfully.

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

Follow these steps to apply patches to Oracle Database Appliance OAKCLI bare metal system using CLI commands.

  1. Download the Oracle Database Appliance Server Patch for the ODACLI/DCS stack (patch 28864520) from My Oracle Support to a temporary location on an external client. Refer to the Oracle Database Appliance Release Notes for 18.3, for details about the software for the latest release.
    For example, download the Oracle Database Appliance Server Patch for ODACLI/DCS Stack for 18.3
    p28864520_183000_Linux-x86-64_1of3.zip
    p28864520_183000_Linux-x86-64_2of3.zip
    p28864520_183000_Linux-x86-64_3of3.zip
  2. Copy the software files from the external client to Oracle Database Appliance. For two-node systems, ensure that you copy the software files to both nodes. 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 the server software:
    [root@oda1 opt]# oakcli unpack -package path_to_patch_file

    For example, for 18.3:

    # oakcli unpack -package /tmp/p28864520_183000_Linux-x86-64_1of3.zip
    # oakcli unpack -package /tmp/p28864520_183000_Linux-x86-64_2of3.zip
    # oakcli unpack -package /tmp/p28864520_183000_Linux-x86-64_3of3.zip
    
  4. Apply the server update:
    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch version --server

    For example, for 18.3:

    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch 18.3.0.0.0 --server
    When you update the server, the OAK stack is migrated to the DCS stack. You must run the ODACLI commands to patch the storage and database.
  5. Confirm that the server update is successful, using the ODACLI command:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli describe-job -i job_ID
  6. Update the storage components.
    Specify the -rolling option to patch shared disks in a rolling fashion.
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-storage -v version -rolling

    For example, for 18.3:

    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-storage -v 18.3.0.0.0 -rolling
  7. To update the Oracle Database Appliance repository with 18.3 RDBMS Clone files:
    1. Download the RDBMS Clone software file p27604558_18300_Linux-x86-64.zip and extract the RDBMS Clone file software:
      unzip /tmp/27604558_183000_Linux-x86-64.zip
      odacli-dcs-18.3.0.0.0-180905-DB-18.0.0.0.zip
    2. Copy the software to a temporary location on the appliance, similar to the procedure you followed for the server patch.
    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 18.3:

      [root@oda1 opt]# /opt/oracle/dcs/bin/odacli update-repository 
      -f /tmp/odacli-dcs-18.3.0.0.0-180905-DB-18.0.0.0.zip
  8. Confirm that the patch jobs are successful:
    [root@oda1 opt]# /opt/oracle/dcs/bin/odacli list-jobs
  9. 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 Oracle Database Appliance Virtualized Platform

Follow these steps to apply patches to Oracle Database Appliance OAKCLI Virtualized Platform using CLI commands.

  1. Download the Oracle Database Appliance Server Patch for OAK Stack and Virtualized Platforms (patch 28864520) from My Oracle Support to a temporary location on an external client. Refer to the Oracle Database Appliance Release Notes for 18.3, for details about the software for the latest release.
    For example, download the Oracle Database Appliance Server Patch for OAK Stack and Virtualized Platforms for 18.3
    p28864520_183000_Linux-x86-64_1of3.zip
    p28864520_183000_Linux-x86-64_2of3.zip
    p28864520_183000_Linux-x86-64_3of3.zip
  2. Copy the software files from the external client to Oracle Database Appliance. For two-node systems, ensure that you copy the software files to both nodes. 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 the server software:
    [root@oda1 opt]# oakcli unpack -package path_to_patch_file

    For example, for 18.3:

    # oakcli unpack -package /tmp/p28864520_183000_Linux-x86-64_1of3.zip
    # oakcli unpack -package /tmp/p28864520_183000_Linux-x86-64_2of3.zip
    # oakcli unpack -package /tmp/p28864520_183000_Linux-x86-64_3of3.zip
    
  4. Apply the server update:
    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch version --server

    For example, for 18.3:

    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch 18.3.0.0.0 --server
  5. Update the storage components.
    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch version --storage

    For example, for 18.3:

    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch 18.3.0.0.0 --storage
  6. To update the Oracle Database Appliance repository with 18.3 RDBMS Clone files:
    1. Download the RDBMS Clone software file p28864456_18300_Linux-x86-64.zip to /tmp location and unpack the RDBMS Clone file software:
      oakcli unpack -package /tmp/28864456_183000_Linux-x86-64.zip
      
    2. Update the repository with latest release database software:
      [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch version --database

      For example, for 18.3:

      [root@oda1 opt]# /opt/oracle/oak/bin/oakcli update -patch 18.3.0.0.0 --database
  7. Verify that the updates are applied.
    [root@oda1 opt]# /opt/oracle/oak/bin/oakcli show version -detail
  8. 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 Trace File Analyzer (TFA) Collector

Trace File Analyzer (TFA) Collector simplifies diagnostic data collection on Oracle Cluster Ready Services (CRS), Oracle Grid Infrastructure, and Oracle RAC systems.

Patch Trace File Analyzer (TFA) Collector to ensure that it contains the latest RPMs, and your deployment runs the latest diagnostic data collection version. If you are deploying Oracle Database Appliance for the first time, then TFA is installed with the new release in the location /opt/oracle/tfa/tfa_home.
Patch Trace File Analyzer (TFA) Collector as follows:
  1. Log in to Oracle Database Appliance as a root user.
  2. Download the latest dcs-agent patch from My Oracle Support.
  3. Update the patch repository.
    odacli update-repository -fileName patch bundle
  4. If you are patching Oracle Database Appliance with the latest patch release, then run the following command, before applying the Oracle Database Appliance patch.
    # odacli update-dcsagent -v version

    To patch TFA to 18.3 release, run the following command twice, to patch both the DCS agent and Trace File Analyzer (TFA) Collector:

    # odacli update-dcsagent -v 18.3.0.0.0
    # odacli update-dcsagent -v 18.3.0.0.0
The existing TFA version is deinstalled from the Grid home and then the dcsagent is patched.

Adding Repositories for Patch Updates

Add patch repositories to update operating system RPMs.

Patching of operating system is included in the Oracle Database Patch Bundle. If you want to update other RPMs, then you can configure any private or public repository. Oracle public YUM channels are already configured by default.

Add operating system RPM repositories as follows:

  1. Run the following command to add a repository:
    # odacli update-agentconfig-parameters -n OSPatchRepos -v 
    'http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/$basearch/' -a

    Provide the public location within quotation marks('')

    For adding RPMs stored on a local disk:

    # odacli update-agentconfig-parameters -n OSPatchRepos -v 
    /tmp/OSimage/OL6.9_x86_64 -a
  2. List all repositories:
    odacli list-agentconfig-parameters -n OSPatchRepos
  3. When you update the server, the operating system patching job uses all repositories to update the operating system RPMs.
    odacli update-server -v 18.3.0.0.0