Installing Patches for Oracle GoldenGate Microservices Architecture
Patching for Oracle GoldenGate refers to applying interim one-off software fixes as well as cumulative software bundle patches to an existing, lower version of the software, yet one that is in the same release label as the patch to be applied. Cumulative and one-off patches for Oracle GoldenGate can be applied on top of a base release or previously patched release, or they may be a one-off patch that should be applied to a specific Oracle GoldenGate version.
Patches for Oracle GoldenGate can be found on My Oracle Support when available, and are located under the Patches & Updates section of MOS.
Note:
When patching multiple installations that already have Deployments and a shared Service Manager configured, the Service Manager will only be patched when the Oracle GoldenGate installation where the Service Manager was first created from, gets patched.Topics:
Downloading Patches for Oracle GoldenGate
Download the appropriate patches for the Oracle GoldenGate build for each system that will be part of the Oracle GoldenGate configuration.
Note:
Before installing the patch, see Release Notes for Oracle Database for any new features, parameter changes, patching requirements, known issues, or bug fixes that affect your current configuration.
Patching Oracle GoldenGate Microservices Architecture Using OPatch
After you download the patch, set up the following prerequisites before installing the patch:
-
Download and install the most recent release of OPatch, and keep a note of the installation directory where you installed the latest release of OPatch.
Details from where to download OPatch are available at: How To Download And Install The Latest OPatch(6880880) Version (Doc ID 274526.1)
-
Download the Oracle GoldenGate patch and maintain a location for storing the contents of the patch ZIP file. This location or the absolute path is referred to as
patch_top_dir
in the subsequent steps. -
Navigate to the
patch_top_dir
directory and run the following command to extract the contents of the patch ZIP file to the location you created previously.cd patch_top_dir
unzip patch_number_version_platform.zip
-
Navigate to the unzipped patch directory:
cd patch_top_dir/patch_number_dir
-
Set the
ORACLE_HOME
environment variable to the Oracle GoldenGate installation directory that is to be patched:For Linux:
$ export ORACLE_HOME=GoldenGate_Installation_Path
For Windows:
> set ORACLE_HOME=GoldenGate_Installation_Path
-
Set the
PATH
environment variable to include the locations of theORACLE_HOME
andOPatch
directories.For Linux:
$ export PATH=$PATH:$ORACLE_HOME:/OPatch
For Windows:
>set PATH=%PATH%;%ORACLE_HOME%;C:\OPatch
-
Verify the Oracle inventory, which OPatch accesses to install the patches. To verify the inventory, run the following command:
opatch lsinventory
If the command displays any errors, contact Oracle Support to resolve the issue.
-
Run the OPatch prerequisites check and verify that it passes.
opatch prereq CheckConflictAgainstOHWithDetail -ph ./
If any errors are displayed, identify the error type. OPatch categorizes conflicts in the following types:
-
Conflicts with a patch already applied to the
ORACLE_HOME
: In this case, stop the patch installation and contact Oracle Support Services.
-
Conflicts with a patch already applied to the
ORACLE_HOME
that is a subset of the patch you are trying to apply: In this case, continue with the patch installation because the new patch contains all the fixes from the existing patch in theORACLE_HOME
. The subset patch will automatically be rolled back prior to the installation of the new patch.
-
-
Before patching Oracle GoldenGate, if you have any deployments for the installation, ensure that you shut down all processes such as Extracts, Replicats, and Distribution paths, and stop all services for the deployments.
This can be done in the Administration Service’s and Service Manager’s WebUI, or in the Admin Client.
If using the Admin Client, perform the following steps to connect to each deployment and stop all processes.
-
If using the Admin Client, connect to each deployment and stop all processes.
-
Start the Admin Client and connect to the deployment.
/GoldenGate_Installation_Path/bin/adminclient
OGG (not connected) 1>CONNECT https://host:srv_mgrport
DEPLOYMENT <deployment-name> AS <user> PASSWORD <password>
-
Stop the Extract and Replicat processes and the Distribution Paths.
STOP ER * STOP DISTPATH ALL
-
Stop the services for the deployment and verify that they are all stopped:
STOP SERVICE * STATUS SERVICE *
-
Exit the Admin Client and stop the Service Manager:
OGG (https://host:port deployment-name) exit
##Command for Service Manager not registered as a service/daemon
export OGG_VAR_HOME=OGG_SRVMGR_DIRECTORY/var
export OGG_ETC_HOME=OGG_SRVMGR_DIRECTORY/etc
OGG_SRVMGR_DIRECTORY/bin/stopSM.sh
##Command for Service Manager registered as a service/daemon
For Linux: $ sudo systemctl stop OracleGoldenGate
For Windows: To stop the Service Manager for Windows, use the Windows Services applet (services.msc) and stop the Oracle GoldenGate Service Manager service.
-
-
Disconnect all user sessions to the deployment as well as close all running Oracle GoldenGate programs, including Admin Client.
Perform the following steps to install the patch:
-
Install the patch by running the following command:
opatch apply
When the
OPatch
command starts, it validates the patch and ensures that there are no conflicts with the software already installed inORACLE_HOME
of the Oracle GoldenGate release. -
After the patch installation completes, run the following command to verify that the Oracle inventory contains the installed patch:
opatch lsinventory
Note:
For Oracle GoldenGate for PostgreSQL installations patched to release version 21.8.0.0.2 and later, prior to restarting the Extracts and Replicats, update the DSN entries in theodbc.ini
file to take advantage of the new driver version. For more information, see Patching Oracle GoldenGate for PostgreSQL to Release Version 21.8.0.0.2 and Later. -
After the patch installation completes, start the Service Manager, the services, and Oracle GoldenGate processes.
-
Start the Service Manager:
For Linux:
##Command for Service Manager not registered as a service/daemon
$ export OGG_VAR_HOME=OGG_SRVMGR_DIRECTORY/var
$ export OGG_ETC_HOME=OGG_SRVMGR_DIRECTORY/etc
$ OGG_SRVMGR_DIRECTORY/bin/startSM.sh
##Command for Service Manager registered as a service/daemon
$ sudo systemctl start OracleGoldenGate
For Windows: Use the Windows Services applet (services.msc) and start the Oracle GoldenGate Service Manager service.
-
Start the Admin Client and connect to the deployment.
/GoldenGate_Installation_Path/bin/adminclient
OGG (not connected) 1>CONNECT https://host:srvmgr_port DEPLOYMENT deployment-name AS user PASSWORD password
-
Start services for the deployment and verify that they are all running:
START SERVICE * STATUS SERVICE *
-
Start the Extract, Replicat and Distribution paths:
START ER * START DISTPATH ALL
-
Post-Patch Installation Tasks for Non-Oracle Databases for Microservices Architecture
This topic lists the post-patch installation tasks for non-Oracle databases, Microsoft SQL Server and MySQL.
Topics:
Patching Oracle GoldenGate MySQL 5.7 with DDL Replication Enabled
To patch Oracle GoldenGate MySQL 5.7 with DDL replication enabled:
-
Stop the metadata server using the following DDL install script
stop
option../ddl_install.sh stop user-id password port-number
-
Replace the
metadata_server
executable in the installation directory. -
Start the metadata server running currently using ddl install script start option:
./ddl_install.sh start user-id password port-number
Note:
The DDL operations issued in between starting and stopping themetadata_server
would be lost.
Patching Oracle GoldenGate for SQL Server - Extract Requirements
ADD TRANDATA
for each table that is
already enabled for TRANDATA
using these steps:
-
Stop all Oracle GoldenGate processes.
-
Follow normal patch procedures for binary replacement but do not start any Oracle GoldenGate processes. See Installing Patches for Oracle GoldenGate Microservices Architecture for details.
-
Manually stop the SQL Server CDC Capture job for the database. If the job is processing a large transaction, it may take some time before it actually stops.
-
Ensure that the Extract is stopped.
-
Using Admin client, run
ADD TRANDATA
again for every table that you previously enabled it for, including the heartbeat tables and any Replicat checkpoint table used as aFILTERTABLE
object for active/active configurations.Note:
Do not run the
DELETE TRANDATA
command. -
Manually restart the SQL Server CDC Capture job.
-
Manually restart the Oracle GoldenGate processes such as Extract, Replicat, and Manager.
Patching Oracle GoldenGate for PostgreSQL to Release Version 21.8.0.0.2 and Later
When patching Oracle GoldenGate for PostgreSQL from release versions prior to
21.8.0.0.2, to version 21.8.0.0.2 or later, you need to update the DSN entries in the
odbc.ini
file to take advantage of the new driver delivered as part
of those patches.
-
Update any existing DSN entries in the
odbc.ini
file and change the driver attributes for each DSN entry, to the following values:-
Driver – For Oracle GoldenGate release versions 21.8.0.0.2 and later, set the value to:
/<GoldenGate_Installation_Folder>/datadirect/lib/ggpsql25.so
-
-
Finish following the normal steps for patching Oracle GoldenGate.
Uninstalling the Patch for Oracle and Non-Oracle Databases Using OPatch
-
Install the latest OPatch version, set the required environment variables, and stop the Oracle GoldenGate processes and services. The patch installation steps are documented in the previous topic.
-
Navigate to the
patch_top_dir/patch_number
directory:$ cd patch_top_dir/patch_number
-
Uninstall the patch by running the following command:
$ opatch rollback -id patch_number
-
Start the services from the Oracle GoldenGate home.