Upgrading Oracle GoldenGate Microservices Using REST APIs

Learn the steps to upgrade Oracle GoldenGate Microservices using the GUI.

Follow these steps to obtain the Oracle GoldenGate installation software and set up the directories for upgrade.

  1. Download the latest Oracle GoldenGate Microservices 23ai software from the Oracle Technology Network or eDelivery.

  2. Move the Oracle GoldenGate 23ai MA software to a staging folder and unzip it.

    For Linux, use the following example:

    $ mv /home/user/fbo_ggs_Linux_x64_Oracle_services_shiphome.zip /tmp
    $ cd /tmp$ unzip fbo_ggs_Linux_x64_Oracle_services_shiphome.zip
  3. Run the installer to install the software in a new Oracle GoldenGate home directory.

    For Linux, use the following example:
    mkdir -p
    /u01/app/pracle/GoldenGate/23aicd
    /u01/oracle/stage/bo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/runInstaller

    This starts the Oracle GoldenGate installer wizard.

  4. Select the database for this Oracle GoldenGate installation and click Next.

  5. Specify the location to install Oracle GoldenGate. Choose the previously created (empty) directory and click Next.

  6. Specify the orainventory directory that contains the metadata of this installation and click Next.

  7. Install the software and save the response file if required.

At this point, you should have a new Oracle GoldenGate 23ai MA home and any prior release homes of Oracle GoldenGate MA.

Upgrade a Service Manager

When upgrading the Service Manager, you can use the following cURL example to update the Oracle GoldenGate home:

curl -u adminname:adminpwd -X PATCH \
   https://hostname:port/services/v2/deployments/ServiceManager \
  -H 'cache-control: no-cache' \
  -d '{"oggHome":"new OGG_HOME_absolute_path", "status":"restart"}'

In this syntax, enter the new Oracle GoldenGate home directory absolute directory path such as /u01/app/oracle/product/23ai/gghome_1.

Check if Service Manager is running from the new $OGG_HOME, using the following command:
ps -ef|grep -i servicemanager
If you don't see Service Manager in running state, then run the following command:
cd $NEW_OGG_HOME/bin
$ ./ServiceManager

Upgrade a Deployment

To upgrade a deployment:
  1. Stop all Extract and Replicat processes gracefully:
    • Check for open (long running) transaction and Bounded Recovery as it may take longer to stop Extract gracefully.

    • If any unnecessary open transactions are visible, for example SEND EXTRACT group_name SHOWTRANS, then those transactions can be skipped or immediately forced to stop. In this case, a Bounded Recovery checkpoint can be retrieved using the following command:

      SEND EXTRACT group_name, BR BRCHECKPOINT immediate

  2. Oracle GoldenGate for Oracle Database, with the Unified Build feature requires only the TNS_ADMIN to be adjusted to the Oracle Database Client software within Oracle GoldenGate.

    curl -k -u adminname:adminpwd -X PATCH \
    https://server.oracle.com:9000/services/v2/deployments/uat_01 \
    -H 'cache-control: no-cache' \
    -d '{"environment": [, {"name": "TNS_ADMIN" , "value": "/u01/app/oracle/network/admin"} ] }'

    Note:

    When upgrading from 21c to 23ai, this step is not necessary. If upgrading from Oracle GoldenGate 19c (or earlier) to 23ai, you only need the TNS_ADMIN environment variable.

    The OGG_HOME environment variable can automatically detect the DATABASE_HOME, LD_LIBRARY_PATH, and JAVA_HOME.

  3. (SQL Server only) Oracle GoldenGate 23ai for SQL Server on Linux includes an ODBC driver for database connectivity. Although it’s not required, it is recommended to utilize the packaged driver. To use the packaged driver, two new environment variables need to be created and any previously created odbc.ini file needs to be updated.

    Add the following environment variables to the deployment:
    curl -k -u adminname:adminpwd -X PATCH \
    https://server.oracle.com:9000/services/v2/deployments/uat_01 \
    -H 'cache-control: no-cache' \
    -d '{"environment": [ , {"name": "ODBCSYSINI" , "value": "${OGG_HOME}/msodbc"} 
                          , {"name": "ODBCINI"    , "value": "${OGG_HOME}/msodbc/odbc.ini"}] }'
    After creating the new environment variables, copy your existing odbc.ini file to the Oracle GoldenGate msodbc folder and change the ODBC Driver value of any DSN entry to the following:
    Driver=Microsoft ODBC Driver for SQL Server
  4. Run this cURL command to upgrade the Oracle GoldenGate deployment:
     curl -u SM username:SM password -X PATCH 
    http://hostname:servicemanager port/services/v2/deployments/Deployment-name 
    -H 'cache-control: no-cache'
    -d '{"oggHome":"new OGG_HOME complete path","status":"restart"}'
  5. Start all Extracts and Replicats.

When the Service Manager or deployment restarts, the upgrade is complete.