Make sure that you are installing your product on a supported hardware or software configuration. For more information, see the certification document for your release on the Oracle Fusion Middleware Supported System Configurations page.
Oracle has tested and verified the performance of your product on all certified systems and environments; whenever new certifications occur, they are added to the proper certification document right away. New certifications can occur at any time, and for this reason the certification documents are kept outside of the documentation libraries and are available on Oracle Technology Network.
This section outlines the requirements to support Oracle GoldenGate on the local operating system.
The following system services must be enabled on the host system.
Activate Unix System Services (USS) in full function mode rather than in minimum mode. You can use the z/OS UNIX Configuration Wizard for this purpose. Refer to the IBM UNIX System Services Planning manual for more information. The UNIX customization includes the following:
Make the Language Environment run-time library (RTL) available to Oracle GoldenGate and other C programs by including it in the link list or Link Pack Area (LPA), or by adding it to the
STEPLIB environment variable. RTL consists of data sets
SCEERUN2 . If you are using
STEPLIB , define the
SCEERUN data sets to LLA to make loading the run-time modules faster. See the UNIX System Services Planning documentation for more information.
Install Recoverable Resource Manager Services (RRS) for the best performance. Depending on the attachment type, the user by which Oracle GoldenGate runs might need one of the following permissions on the DSNR resource class:
If using RRSAF, assign
RACF ACCESS(READ) to the RRSAF resource. IBM recommends using RRSAF because it has several advantages over CAF, including support for two-phase commit, thread reuse, and control over accounting intervals.
If using CAF, assign
RACF ACCESS(READ) to the
BATCH environment. If using CAF, it is possible for Oracle GoldenGate to hold locks on the system catalog until it receives a transaction commit.
Oracle GoldenGate supports Sysplex data sharing.
Oracle GoldenGate requires the following memory resources on the local system.
The amount of memory that is required for Oracle GoldenGate depends on the amount of data being processed, the number of Oracle GoldenGate processes running, the amount of RAM available to Oracle GoldenGate, and the amount of disk space that is available to Oracle GoldenGate for storing pages of RAM temporarily on disk when the operating system needs to free up RAM (typically when a low watermark is reached). This temporary storage of RAM to disk is commonly known as swapping or paging (referred to as swapping). Depending on the platform, the term swap space can be a swap partition, a swap file, or a shared memory segment (IBM i platforms).
Modern servers have sufficient RAM combined with sufficient swap space and memory management systems to run Oracle GoldenGate. However, increasing the amount of RAM available to Oracle GoldenGate may significantly improve its performance, as well as that of the system in general.
Typical Oracle GoldenGate installations provide RAM in multiples of gigabytes to prevent excessive swapping of RAM pages to disk. The more contention there is for RAM the more swap space that is used.
Excessive swapping to disk causes performance issues for the Extract process in particular, because it must store data from each open transaction until a commit record is received. If Oracle GoldenGate runs on the same system as the database, the amount of RAM that is available becomes critical to the performance of both.
RAM and swap usage are controlled by the operating system, not the Oracle GoldenGate processes. The Oracle GoldenGate cache manager takes advantage of the memory management functions of the operating system to ensure that the Oracle GoldenGate processes work in a sustained and efficient manner. In most cases, users need not change the default Oracle GoldenGate memory management configuration.
For more information about evaluating Oracle GoldenGate memory requirements, see the
CACHEMGR parameter in Reference for Oracle GoldenGate.
Allocate approximately 10-50 MB of virtual memory for each Oracle GoldenGate log reader,
oggreadx, that is invoked depending on the size of the log buffer. There is one invocation per Extract process on the remote system. To adjust the maximum log buffer size, use the
TRANLOGOPTIONS BUFSIZE parameter in the Extract parameter file.
(Only applicable if you are installing stored procedures.) When using TSO to access USS, give the TSO user enough memory allocation to start the Oracle GoldenGate GGSCI process. If you get the error message "
CEE3536S Not enough storage was available for the WSA ," increase the TSO user memory or ask your TSO administrator to do it.
This section outlines the disk requirements needed to support Oracle GoldenGate.
Assign the following free disk space:
To determine the size of the Oracle GoldenGate download file, view the Size column before downloading your selected build from Oracle Software Delivery Cloud. The value shown is the size of the files in compressed form. The size of the expanded Oracle GoldenGate installation directory will be significantly larger on disk.
Allow at least an additional 1 GB of disk space on any system that hosts Oracle GoldenGate trails, which are files that contain the working data. You may need more or less than this amount, because the space that is consumed by the trails depends on the volume of data that will be processed. See the guidelines for sizing trails in Administering Oracle GoldenGate.
By default, Oracle GoldenGate maintains data that it swaps to disk in the
dirtmp sub-directory of the Oracle GoldenGate installation directory. The cache manager assumes that all of the free space on the file system is available. This directory can fill up quickly if there is a large transaction volume with large transaction sizes. To prevent I/O contention and possible disk-related Extract failures, dedicate a disk to this directory. You can assign a name and size to this directory with the
CACHEDIRECTORY option of the
CACHEMGR parameter. The
CACHESIZE option of
CACHEMGR sets a soft limit for the amount of virtual memory (cache size) that is available for caching transaction data. See Reference for Oracle GoldenGate for the default values of these options and detailed explanations, in case system adjustments need to be made.
(Only applicable if you are installing stored procedures.) Assign a a zFS (zSeries file systems) or Hierarchical File System volume. To determine the size of the Oracle GoldenGate download file, examine the size of
zOSPrograms.zip on the remote DB2 system after extracting the installation image.
Oracle GoldenGate requires the following network resources.
Configure the system to use TCP/IP services, including DNS. Oracle GoldenGate supports IPv4 and IPv6 and can operate in a system that supports one or both of these protocols.
Configure the network with the host names or IP addresses of all systems that will be hosting Oracle GoldenGate processes and to which Oracle GoldenGate will be connecting. Host names are easier to use.
Oracle GoldenGate requires some unreserved and unrestricted TCP/IP ports, the number of which depends on the number and types of processes in your configuration. See Administering Oracle GoldenGate for details on how to configure the Manager process to handle the required ports.
Keep a record of the ports that you assigned to Oracle GoldenGate. You will specify them with parameters when configuring the Manager process.
Configure your firewalls to accept connections through the Oracle GoldenGate ports.
The following additional features of the operating system must be available to support Oracle GoldenGate.
To use Oracle GoldenGate user exits, install the C/C++ Compiler, which creates the programs in the required shared object or DLL.
For best results, have the following tools on the system:
Gzip to decompress the Oracle GoldenGate installation files. Otherwise, you must unzip the installation on a PC by using a Windows-based product, and then FTP it to the z/OS machine.
RACF command processor or comparable security package. (This documentation shows recommendations and examples for RACF.)
Time Sharing Option Extensions (TSO/E) command processor, including authorized TSO/E commands.
For best results, apply HIPER maintenance on a regular basis, staying within one year of the current maintenance release, as recommended by IBM. The HIPER process identifies defects that could affect data availability or integrity. IBM provides Program Temporary Fixes (PTF) to correct defects found in DB2 and z/OS.
The remote host requires privileges to use the
chmod +rw command on the subdirectories in the Oracle GoldenGate product directory.
Table 1-1 shows the other required operating system privileges for Oracle GoldenGate:
Table 1-1 Operating System Privileges
|DB2 z/OS User Privilege||Extract||Stored Procedures||Replicat|
Requires access to either the
CAF or the
RRSAF protected access profile in the
DSNR RACF resource class, depending upon the
MVSATTACHTYPE value in the ODBC initialization file.
Non-data sharing only.
In IBM DB2 10 for z/OS 1.13 and later.
This section contains Oracle GoldenGate requirements that are specific to the DB2 database on z/OS.
Configure the following database components to support Oracle GoldenGate.
Install a DB2 ODBC driver. The Oracle GoldenGate Extract and Replicat processes use ODBC (Open Database Connectivity) to connect to the DB2 subsystem. For information about ODBC, see the DB2 for z/OS ODBC Guide and Reference documentation.
Install and configure the DB2 ODBC dynamic load library.
Grant Oracle GoldenGate
EXECUTE privilege on the plan that is specified in the ODBC initialization file (the default is
You might need to insert the name of the local DB2 subsystem into the
SYSIBM.LOCATIONS table, which contains the remote DB2 server locations. Use a statement similar to the following (the example uses the name DB2A).
INSERT INTO SYSIBM.LOCATIONS (LOCATION, PORT) VALUES ('DB2A', '446');
Oracle GoldenGate requires a database user account. Create this account and assign privileges according to the following guidelines.
By default, the user who starts the Manager process becomes the default DB2 primary authorization ID for all of the Oracle GoldenGate processes that any users start in that Oracle GoldenGate instance.You can assign a different user to any process by means of JCL or UNIX variables.
To monitor Oracle GoldenGate processing accurately, do not permit other applications or processes to operate as the Oracle GoldenGate user.
Assign the DB2 privileges listed in Table 1-2 to the user by which Extract and Replicat will be running (default is the user who starts Manager). These are in addition to any permissions that DB2 ODBC requires. All Extract privileges apply to initial-load and log-based Extract processes, except where noted.
Table 1-2 Privileges Needed by Oracle GoldenGate for DB2 on z/OS
(does not apply to initial-load Extract)
Privileges required by
SELECT on source tables required only if tables contain LOB columns, or for an initial-load Extract, if used.
Required if using
ADD CHECKPOINTTABLE in GGSCI to use the database checkpoint feature.
SQLEXEC enables stored procedures and queries to be executed by an Oracle GoldenGate process.
This section lists the DB2 data types that Oracle GoldenGate supports on the z/OS platform and any limitations of this support.
Oracle GoldenGatee does not perform character set conversion for columns that could contain multi-byte data. This includes
DBCLOB data types, as well as
CLOB for tables defined with
ENCODING_SCHEME of '
M' (multiple CCSID set or multiple encoding schemes) or '
U' (Unicode). Such data is only supported if the source and target systems are the same CCSID.
Oracle GoldenGate supports ASCII, EBCDIC, and Unicode data format. Oracle GoldenGate will convert between ASCII and EBCDIC data automatically. Unicode is never converted.
Oracle GoldenGate supports most DB2 data types except those listed in Non-Supported DB2 on z/OS Data Types.
Limitations of Support
The support of range and precision for floating-point numbers depends on the host machine. In general, the precision is accurate to 16 significant digits, but you should review the database documentation to determine the expected approximations. Oracle GoldenGate rounds or truncates values that exceed the supported precision.
Oracle GoldenGate does not support the filtering, column mapping, or manipulation of large objects greater than 4K in size. Full Oracle GoldenGate functionality can be used for objects that are 4K or smaller.
DECFLOAT is fully supported by Replicat. Extract does not capture
DECFLOAT from the transaction log, but supports capture of it by fetching from the database.
This section lists DB2 data types that Oracle GoldenGate does not support on the z/OS platform. Data that is not supported may affect the integrity of the target data in relation to the source data.
TIMESTAMP WITH TIMEZONE
This section lists the database objects and types of operations that Oracle GoldenGate supports.
Extraction and replication of DML operations on DB2 for z/OS tables that contain rows of up to 512KB in length. This size exceeds the maximum row size of DB2.
INSERT operations from the IBM
LOAD utility are supported for change capture if the utility is run with
LOG YES and
SHRLEVEL CHANGE, and the source tables that are being loaded have
DATA CAPTURE CHANGES enabled (required by Oracle GoldenGate) and are specified in the Oracle GoldenGate Extract configuration.Oracle GoldenGate also supports initial loads with the
LOAD utility to instantiate target tables during initial synchronization. For more information, see Administering Oracle GoldenGate.
Oracle GoldenGate supports the maximum number of columns per table that is supported by the database.
Oracle GoldenGate supports the maximum column size that is supported by the database.
Extraction and replication of data that is stored using DB2 data compression (
CREATE TABLESPACE COMPRESS YES).
TRUNCATE TABLE is supported, but because this command issues row deletes to perform the truncate, they are shown in Oracle GoldenGate statistics as such, and not as a truncate operation. To replicate a
TRUNCATE , Replicat uses a
DELETE without a
TRUNCATES are always captured from a DB2 for z/OS source, but can be ignored by Replicat if the
IGNORETRUNCATES parameter is used in the Replicat parameter file.
Extraction or replication of DDL operations
Data manipulation, including compression, that is performed within user-supplied DB2 exit routines, such as:
Date and time routines
Edit routines (
CREATE TABLE EDITPROC )
Validation routines (
CREATE TABLE VALIDPROC )
AES encryption in Oracle GoldenGate security features
The Multi-Journal feature does not support multi-journal sync of a transaction across multiple journals.
BATCHSQL is not fully functional for DB2 for z/OS. Non-insert operations are not supported so any update or delete operations will cause Replicat to drop temporarily out of
BATCHSQL mode. The transactions will stop and errors will occur.