1 Introduction to OPatch and Patching

Product Compatibility:

This book applies to all Database 12.x, Enterprise Manager 12c/13c, and Fusion Middleware 12.x releases.

OPatch consists of patching utilities that help ensure your Oracle software stays current and secure. The utilities are:

  • OPatch: A Java-based utility that enables the application and rollback of patches to Oracle software.

  • OPatchauto: A patch orchestration tool that generates patching instructions specific to your target configuration and then uses OPatch to perform the patching operations without user intervention. Specifically, OPatchAuto can:

    1. Perform pre-patch checks.

    2. Apply the patch

    3. Start and stop the running servers.

    4. Perform post-patch checks.

    5. Roll back patches when patch deinstallation is required.

  • OPatchauto -binary: A patch application tool that applies a single patch on a selected Oracle home. OPatchauto -binary patches only one Oracle home per session.

These utilities provide you with the flexibility to analyze, troubleshoot, and patch an individual GI (Grid Infrastructure)/RAC (Real Application Cluster) home environments.

For large-scale IT environments, patching individual product (e.g., Fusion Middleware) homes may not be practical since patching large numbers of targets manually is both monotonous and error prone. To maintain and deploy Oracle patches across many targets across your organization, you can use Enterprise Manager Cloud Control's patch automation capability. For more information about Enterprise Manager's patch management solution, see the "Patching Software Deployments" in the Oracle® Enterprise Manager Lifecycle Management Administrator's Guide.

This chapter covers the following introductory and overview topics:

The patch process is not always straight forward as there are numerous factors that determine which software patches you need and how these patches should be applied. For example, the types of Oracle software installed on each target, software versions, or platforms on which the software is running are just a few.

1.1 Overview of the Patch Process

Regardless of your environment's patching requirements, the basic patching methodology is the same. The normal patching workflow can be broken down into the following nine steps shown in the following figure.

Figure 1-1 Patch Process Overview - Process Flow

Surrounding text describes Figure 1-1 .

1.1.1 Obtaining the Patches You Need

As shown in Figure 1-1, "Patch Process Overview - Process Flow", the first step is to determine what patches you need. You may find out about required patches from blogs, Oracle Technology Network (OTN), Service Requests, Knowledge Articles, Oracle documentation, or any number of other sources. However, the single source of truth for patching is the Oracle Support Web site—My Oracle Support (MOS).


From here, you have access to interactive support tools and information that simplify searching for and obtaining the requisite patches for your Oracle environment. You can find complete documentation about MOS at the following location:


Figure 1-2 My Oracle Support Main Page

MOS main page

My Oracle Support contains many features and capabilities that are grouped under tabs across the top of the application. Of primary interest is the Patches and Updates tab shown in the following figure.

Figure 1-3 MOS Patches and Updates

Surrounding text describes Figure 1-3 .

From this page, you can search for the desired patch based on a specific configuration. One particularly useful search feature is the Recommended Patch Advisor. The Recommended Patch Advisor lets you find recommended and mandatory patches for standalone products, product combinations, or products for a product stack. For example, using the Recommended Patch Advisor, you search for patches for the following product:

  • Product: Oracle Database

  • Release:

  • Platform: Linux x86-64

This search returns the following results:

Surrounding text describes mos_patch_search.gif.

By clicking on patch 14727315 (PSU) you are taken to the patch page where you can view bugs resolved by this patch, related Knowledge Articles, or view a generic patch README.

patch main page

From this page, you also complete Step 2 of the patching workflow—Download the patch to your local system. The following list summarizes sources from which you can obtain patches.

Types of Oracle Patches

Oracle regularly makes patches available to upgrade features, enhance security, or fix problems with supported software. The major types of patches are:

  • Interim patches - contain a single bug fix or a collection of bug fixes provided as required

  • Interim patches for security bug fixes - contain customer-specific security bug fixes

  • Diagnostic patches - intended to help diagnose or verify a fix or a collection of bug fixes

  • Bundle Patch Updates (BPUs) - a cumulative collection of fixes for a specific product or component

  • Patch Set Updates (PSUs) - a cumulative collection of high impact, low risk, and proven fixes for a specific product or component and Security Patch Updates

  • Security Patch Updates (SPU) - a cumulative collection of security bug fixes. SPUs were formerly known as Critical Patch Updates (CPU).

  • System Patch - contains several sub-patches in a format that can be used by OPatchAuto.

  • Merge Label Request (MLR) - a merge of two or more fixes. MLR creation requires a label for the new set of merged code and a Patch Set Exception

1.1.2 Applying the Patch to the Desired Targets

Now that you have the requisite patch, you determine which targets in your environment need to be patched (Step 3 in the patching workflow) and then apply the patch to each target (Step 4). Step 4 is where the OPatch utilities come into play. See Figure 1-1, "Patch Process Overview - Process Flow" to view the complete patching workflow.


Ensure that you have the latest version of OPatch. For more information, see "Obtain the Latest OPatch Utility." Manual Patching

Using OPatch, you follow the generic instructions in the patch README. You can view the patch README bundled with the patch or directly from the MOS page for the patch in question.

You are required to read the linked support documentation and fill in the details of your specific configuration before you can implement any of the commands or add them to custom install scripts. Although this method is laborious, it provides you with a great deal of diagnostic capability and control if patch conflicts arise. See Chapter 2, "Binary Patching Using OPatch." Configuration Patching

OPatchAuto performs end-to-end configuration patching. Configuration patching is the process of patching a target based on its configuration. By incorporating the site configuration information into the patch process, OPatchAuto is able to simplify patching tasks by automating most of the steps.

See Chapter 3, "Concepts of Multi-Node Patch Orchestration Using OPatchAuto" for more information.

1.2 Patching with Enterprise Manager

As useful as the OPatch utilities are, by themselves, they are limited in their ability to apply patches to large numbers of targets because they patch one GI/RAC home at a time. This could be challenging and time consuming in large, heterogeneous IT environments.

In order to handle large-scale patching, Oracle provides a new patch management solution that integrates OPatch with Enterprise Manager Cloud Control 12c. Enterprise Manager's tight integration with My Oracle Support (MOS) allows you to view patch recommendations, search patches, and roll out patches from a single user interface. In addition, Enterprise Manager's advanced Patch Plan feature provides you with a complete, end-to-end orchestration of the patching workflow. Automating the selection of deployment procedures and analysis of patch conflicts greatly reduces manual effort required to patch complex IT environments.

Enterprise Manager integrates both OPatch and My Oracle Support for downloading and applying patches. See the following documentation for information:

1.3 Who Should Use OPatch?

While OPatch is integrated with many Oracle product installations, you may still find that you need to use the OPatch directly. The core OPatch tool is used directly by admins as part of manual patching. OPatchAuto invokes OPatch, so an understanding of core OPatch is useful. OPatch is also useful for conflict detection and resolution as well as troubleshooting.


Before performing any patch task, always read the patch README file for any special patching instructions.

You can use the OPatch utilities if your administrative tasks require you to:

  • Report on installed products and patches.

  • Apply one or more patches.

  • Roll back the application of one or more patches.

  • Detect conflicts among incoming patches and between it and previous patches that have been applied. OPatch suggests the best options to resolve a conflict.

1.4 What's Covered in this Guide

This document describes how to use these patching utilities and covers the following topics:


Recommendation of what tool to use when is stated in the README of the given patch. Always start with the README.

With these patching tools, you can design and implement a patch plan based on the configuration of your Oracle products.


Before patching any Oracle product, always check the product documentation for patching instructions.

1.5 OPatch Integration with Other Oracle Software

In addition to Enterprise Manager, many Oracle software products have integrated the OPatch utilities to provide for a seamless and efficient patching task. Depending on the application, the call to the OPatch utility may be transparent, and all patching activity is maintained within the respective application.

These applications listed below have integrated OPatch into their respective environments. Always check the user documentation for any patching instructions before applying a patch.

Fusion Middleware/Fusion Applications

Other Oracle products, such as Fusion Middleware and Fusion Applications, integrate OPatch and may require different interaction to apply a particular patch. Refer to the following documentation:

1.6 How to Access the OPatch Utilities

With OPatch integrated in many Oracle products, the utility is automatically installed when you install the respective product (for example, Enterprise Manager). The patching tools are installed in the following directories:

  • OPatch - $ORACLE_HOME/OPatch/opatch

  • OPatchAuto - $ORACLE_HOME/opatch/opatchauto

See Appendix A, "OPatch Syntax and Commands," and Appendix B, "OPatchAuto Syntax and Commands" for a complete list of commands and options supported by OPatch utilities.