2.1 Preparing for Installation

Prepare your Java environment by ensuring that you have the correct version of Java installed, and that the environmental variables have been set up and configured correctly.

2.1.1 Downloading Oracle GoldenGate for Distributed Applications and Analytics

Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA) are available for Windows, Linux, and UNIX. To download, first visit the Oracle support site to see if there is a patch available for your operating system and architecture. See also, GoldenGate Certification Matrix.

Note:

If you are not planning to use the generic build included in the installation, ensure that the major release of the GG for DAA build you download matches (or is known to be compatible with) the major release of the Oracle GoldenGate instance that will be used with it.

  1. Navigate to http://support.oracle.com.

  2. Sign in with your Oracle ID and password.

  3. Select the Patches and Upgrades tab.

  4. On the Search tab, click Product or Family.

  5. In the Product field, type Oracle GoldenGate for Distributed Applications and Analytics.

  6. From the Release drop-down list, select the release version that you want to download.

  7. Make sure Platform is displayed as the default in the next field, and then select the platform from the drop-down list.

  8. Leave the last field blank.

  9. Click Search.

  10. In the Advanced Patch Search Results list, select the available builds that satisfy the criteria that you supplied.

  11. In the file Download dialog box, click the ZIP file to begin the download.

If patches are not available on the support site, go to the Oracle delivery site for the release download.

  1. Navigate to http://edelivery.oracle.com.
  2. Sign in with your Oracle ID and password.
  3. On the Terms and Restrictions page:
    • Accept the Trial License Agreement (even if you have a permanent license).

    • Accept the Export Restrictions.

    • Click Continue.

  4. On the Media Pack Search page:
    • Select the Oracle Fusion Middleware Product Pack.

    • Select the platform on which you will be installing the software.

    • Click Go.

  5. In the Results list:
    • Select the Oracle GoldenGate for Distributed Applications and Analytics.

    • Click Continue.

  6. On the Download page:
    • View the Readme file.

    • Click Download for each component that you want. Follow the automatic download process to transfer the zip file to your system.

2.1.2 Installation Overview

This section provides an overview of the installation contents and the Oracle GoldenGate instances used with the Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA).

2.1.2.1 Contents of the Installation ZIP File

The Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA) installation ZIP file contains:

  • Oracle GoldenGate Java Adapter

  • A version of Oracle GoldenGate designed to stream data to supported targets. This version is labeled generic because it is not specific to any database, but it is platform dependent. For more information, see GoldenGate Certification Matrix.

2.1.2.2 Using the Generic Build of Oracle GoldenGate

For JMS capture, the Java Adapter must run in the generic build of Oracle GoldenGate. However, the generic build is not required when using the adapter for delivery of trail data to a target; in this case, the Java Adapter can be used with any database version of Oracle GoldenGate.

2.1.2.3 Considerations for Using a Custom Build for a GoldenGate for Distributed Applications and Analytics Instance of Oracle GoldenGate

There are both advantages and disadvantages to installing a custom build for am Oracle GoldenGate instance. Also, there are limitations in the releases of Oracle GoldenGate that are compatible with releases of the GG for DAA.

Advantages

  • The non-generic instance allows you to configure Extract to login to the database for metadata. This removes the need to use a source definitions file that must be synchronized your the source database DDL.

  • There is no need to manage two separate versions of Oracle GoldenGate when doing database capture and JMS delivery on the same server.

Disadvantages

  • If you need to patch Oracle GoldenGate core instance, you must also copy GG for DAA into the new patched installation of Oracle GoldenGate.

  • The Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA) are only tested and certified with the generic version of Oracle GoldenGate core. New patches of the core can trigger incompatibilities.

Limitations

  • The Replicat module to write to GG for DAA targets is only available in the Generic Oracle GoldenGate distribution.

  • The generic build must be used with JMS capture, as this is the only version of Extract that is capable of loading the VAM.

  • A DEFGEN utility is not included with GG for DAA. To generate source definitions, you will need a version of Oracle GoldenGate that is built specifically for your database type.

2.1.2.4 Installing to a Non-Generic Instance of Oracle GoldenGate

If you decide to install the Java user exit to a non-generic instance of Oracle GoldenGate, unzip to a temporary location first and then copy the adapter files to your Oracle GoldenGate installation location.

To install the Java user exit to a non-generic instance of Oracle GoldenGate:

  1. Navigate to the Oracle GoldenGate installation directory, for example C:/ggs.
  2. Create a temporary directory, and extract the Java user exit ZIP file into this into sub directory within it, for example ggjava.
  3. Copy or move the files from the ggjava sub directory and shared libraries into the Oracle GoldenGate installation directory (C:/ggs).

    Note:

    You need not copy the shared library ggjava_vam because, it only works with the generic build.

2.1.3 Directories and Variables in Microservices Architecture

The Microservices Architecture is designed with a simplified installation and deployment directory structure.

This directory structure is based on the Linux Foundation Filesystem Hierarchy Standard. Additional flexibility has been added to allow parts of the deployment subdirectories to be placed at other locations in the file system or on other devices, including shared network devices. The design comprises a read-only Oracle GoldenGate home directory where Oracle GoldenGate Microservices Architecture is installed and custom deployment specific directories are created as follows:

  • bin
  • cfgtoollogs
  • deinstall
  • diagnostics
  • include
  • install
  • inventory
  • jdk
  • jlib
  • lib
    • instantclient
    • sql
    • utl
  • OPatch
  • oraInst.loc
  • oui
  • srvm

The following figure shows the files and directories under the Services Manager (srvm) directory:

Figure 2-1 GoldenGate MA Directory Structure

The directories in the $OGG_HOME directory include, bin, cfgtoollogs, deinstall, diagnostics, include, install, inventory, jdk, jlib, lib (instantclient, sql, utl), OPatch, oraInst.loc, oui, and srvm (Service Manager). The $OGG_HOME directory connects to the Service Manager, which in turn connects to the created source and target deployment directories. The deployment directories are etc, var, and lib.

The following table describes the key MA directories and the variables that are used when referring to those directories during an Oracle GoldenGate installation. When you see these variables in an example or procedure, replace the variable with the full path to the corresponding directory path in your enterprise topology.

Directory Name Variable Description Default Directory Path

Oracle GoldenGate home

OGG_HOME

The Oracle GoldenGate home that is created on a host computer is the directory that you choose to install the product, here GoldenGate for Distributed Applications and Analytics (GG for DAA). This read-only directory contains binary, executable, and library files for GG for DAA.

/ogg_install_location

Deployment etc home

OGG_ETC_HOME

The location where your deployment configuration files are stored including parameter files.

/ogg_deployment_location/etc

Deployment configuration home

OGG_CONF_HOME

The location where each deployment information and configuration artifacts are stored.

/ogg_deployment_location/etc/conf

Deployment security home

OGG_SSL_HOME

The location where each deployment security artifacts (certificates, wallets) are stored.

/ogg_deployment_location/etc/ssl

Deployment variable home

OGG_VAR_HOME

The location where each deployment logging and reporting processing artifacts are stored.

/ogg_deployment_location/var

Deployment data home

OGG_DATA_HOME

The location where each deployment data artifacts (trail files) are stored.

/ogg_deployment_location/var/lib/data

You can change the default location of all of these to customize where you want to store these files.

In a configuration where the OGG_VAR_HOME is a local directory and the OGG_HOME is a shared read-only remote directory, many deployments with local OGG_VAR_HOME can share one read-only shared OGG_HOME.

This directory design facilitates a simple manual upgrade. To upgrade, you stop the services and then set the OGG_HOME in the web interface (or via a REST command) and then restart the processes. On restart, Oracle GoldenGate picks up the updated environment variables. You simply switch a deployment to use a new Oracle GoldenGate release by changing the Oracle GoldenGate home directory path in the Service Manager to a new Oracle GoldenGate home directory, which completes the upgrade. Restart the microservices, Extract and Replicat processes.

2.1.4 Setting up Environmental Variables

To configure your Java environment for Oracle GoldenGate for Java:

  • The PATH environmental variable should be configured to find your Java Runtime

  • The shared (dynamically linked) Java virtual machine (JVM) library must also be found.

On Windows, these environmental variables should be set as system variables; on Linux/UNIX, they should be set globally or for the user running the Oracle GoldenGate processes. Examples of setting these environmental variables for Windows, UNIX, and Linux are in the following sections.

Note:

There may be two versions of the JAVA_HOME/.../client, and another in JAVA_HOME/.../server. For improved performance, use the server version, if it is available. On Windows, only the client JVM may be there if only the JRE was installed (and not the JDK).

2.1.4.1 Java on Linux/UNIX

Configure the environment to find the JRE in the PATH, and the JVM shared library, using the appropriate environmental variable for your system. For example, on Linux (and Solaris), set LD_LIBRARY_PATH to include the directory containing the JVM shared library as follows (for sh/ksh/bash):

Note:

On AIX platforms, you set LIBPATH=. On HP-UX IA64, you set SHLIB_PATH=.

Example 2-1 Configuring path for Java on Linux

export JAVA_HOME=/opt/jdk1.8 
export PATH=$JAVA_HOME/bin:$PATH 
export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/amd64/server:$LD_LIBRARY_PATH

In this example, the directory $JAVA_HOME/jre/lib/i386/server should contain the libjvm.so and libjsig.so files. The actual directory containing the JVM library depends on the operating system and if the 64-bit JVM is being used.

Verify the environment settings by opening a command prompt and checking the Java version as in this example:

$ java -version 
java version "1.8.0_92" 
Java(TM) SE Runtime Environment (build 1.8.0_92-b14) 

2.1.4.2 Java on Windows

After Java is installed, configure the PATH to find the JRE and JVM DLL (jvm.dll):

Example 2-2 Configuring Path for Java on Windows

set JAVA_HOME=C:\Program Files\Java\jdk1.8.0 
set PATH=%JAVA_HOME%\bin;%PATH% 
set PATH=%JAVA_HOME%\jre\bin\server;%PATH% 

In the example above, the directory %JAVA_HOME%\jre\bin\server should contain the file jvm.dll.

Verify the environment settings by opening a command prompt and checking the Java version as in this example:

C:\> java -version 
java version "1.8.0_92" Java(TM) SE Runtime Environment (build 1.8.0_92-b14))