Home
/
Middleware
/
Oracle GoldenGate for Windows and UNIX
1/30
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
1
Introduction to Oracle GoldenGate
1.1
Oracle GoldenGate Supported Processing Methods and Databases
1.2
Overview of the Oracle GoldenGate Architecture
1.2.1
Overview of Extract
1.2.2
Overview of Data Pumps
1.2.3
Overview of Replicat
1.2.4
Overview of Trails
1.2.5
Overview of Extract Files
1.2.6
Overview of Checkpoints
1.2.7
Overview of Manager
1.2.8
Overview of Collector
1.3
Overview of Process Types
1.4
Overview of Groups
1.5
Overview of the Commit Sequence Number (CSN)
2
Oracle GoldenGate Globalization Support
2.1
Preserving the Character Set
2.1.1
Character Set of Database Structural Metadata
2.1.2
Character Set of Character-type Data
2.1.3
Character Set of Database Connection
2.1.4
Character Set of Text Input and Output
2.2
Using Unicode and Native Characters
3
Configuring Manager and Network Communications
3.1
Overview of the Manager Process
3.2
Assigning Manager a Port for Local Communication
3.3
Maintaining Ports for Remote Connections through Firewalls
3.4
Choosing an Internet Protocol
3.5
Recommended Manager Parameters
3.6
Creating the Manager Parameter File
3.7
Starting Manager
3.7.1
Starting Manager from the Command Shell of the Operating System
3.7.2
Starting Manager from GGSCI
3.8
Stopping Manager
3.8.1
Stopping Manager on UNIX and Linux
3.8.2
Stopping Manager on Windows
4
Getting Started with the Oracle GoldenGate Process Interfaces
4.1
Using the GGSCI Command-line Interface
4.1.1
Using Wildcards in Command Arguments
4.1.2
Globalization Support for the Command Interface
4.1.3
Using Command History
4.1.4
Storing and Calling Frequently Used Command Sequences
4.2
Controlling Oracle GoldenGate Processes
4.2.1
Controlling Manager
4.2.2
Controlling Extract and Replicat
4.2.3
Deleting Extract and Replicat
4.3
Automating Commands
4.3.1
Issuing Commands Through the IBM i CLI
4.4
Using Oracle GoldenGate Parameter Files
4.4.1
Globalization Support for Parameter Files
4.4.2
Working with the GLOBALS File
4.4.3
Working with Runtime Parameters
4.4.4
Creating a Parameter File
4.4.5
Verifying a Parameter File
4.4.6
Viewing a Parameter File
4.4.7
Changing a Parameter File
4.4.8
Simplifying the Creation of Parameter Files
4.4.9
Getting Information about Oracle GoldenGate Parameters
4.5
Specifying Object Names in Oracle GoldenGate Input
4.5.1
Specifying Filesystem Path Names in Parameter Files on Windows Systems
4.5.2
Supported Database Object Names
4.5.3
Specifying Names that Contain Slashes
4.5.4
Qualifying Database Object Names
4.5.5
Specifying Case-Sensitive Database Object Names
4.5.6
Using Wildcards in Database Object Names
4.5.7
Differentiating Case-sensitive Column Names from Literals
5
Using Oracle GoldenGate for Live Reporting
5.1
Overview of the Reporting Configuration
5.1.1
Filtering and Conversion
5.1.2
Read-only vs. High Availability
5.1.3
Additional Information
5.2
Creating a Standard Reporting Configuration
5.2.1
Source System
5.2.2
Target System
5.3
Creating a Reporting Configuration with a Data Pump on the Source System
5.3.1
Source System
5.3.2
Target System
5.4
Creating a Reporting Configuration with a Data Pump on an Intermediary System
5.4.1
Source System
5.4.2
Intermediary System
5.4.3
Target System
5.5
Creating a Cascading Reporting Configuration
5.5.1
Source System
5.5.2
Second System in the Cascade
5.5.3
Third System in the Cascade
6
Using Oracle GoldenGate for Real-time Data Distribution
6.1
Overview of the Data-distribution Configuration
6.2
Considerations for a Data-distribution Configuration
6.2.1
Fault Tolerance
6.2.2
Filtering and Conversion
6.2.3
Read-only vs. High Availability
6.2.4
Additional Information
6.3
Creating a Data Distribution Configuration
6.3.1
Source System
6.3.2
Target Systems
7
Configuring Oracle GoldenGate for Real-time Data Warehousing
7.1
Overview of the Data Warehousing Configuration
7.2
Considerations for a Data Warehousing Configuration
7.2.1
Isolation of Data Records
7.2.2
Data Storage
7.2.3
Filtering and Conversion
7.2.4
Additional Information
7.3
Creating a Data Warehousing Configuration
7.3.1
Source Systems
7.3.2
Target System
8
Configuring Oracle GoldenGate to Maintain a Live Standby Database
8.1
Overview of a Live Standby Configuration
8.2
Considerations for a Live Standby Configuration
8.2.1
Trusted Source
8.2.2
Duplicate Standby
8.2.3
DML on the Standby System
8.2.4
Oracle GoldenGate Processes
8.2.5
Backup Files
8.2.6
Failover Preparedness
8.2.7
Sequential Values that are Generated by the Database
8.2.8
Additional Information
8.3
Creating a Live Standby Configuration
8.3.1
Prerequisites on Both Systems
8.3.2
Configuration from Active Source to Standby
8.4
Configuration from Standby to Active Source
8.5
Moving User Activity in a Planned Switchover
8.5.1
Moving User Activity to the Live Standby
8.5.2
Moving User Activity Back to the Primary System
8.6
Moving User Activity in an Unplanned Failover
8.6.1
Moving User Activity to the Live Standby
8.6.2
Moving User Activity Back to the Primary System
9
Configuring Oracle GoldenGate for Active-Active High Availability
9.1
Overview of an Active-active Configuration
9.2
Considerations for an Active-Active Configuration
9.2.1
TRUNCATES
9.2.2
Application Design
9.2.3
Keys
9.2.4
Triggers and Cascaded Deletes
9.2.5
Database-Generated Values
9.2.6
Database Configuration
9.3
Preventing Data Looping
9.3.1
Preventing the Capture of Replicat Operations
9.3.2
Identifying Replicat Transactions
9.3.3
Replicating DDL in a Bi-directional Configuration
9.4
Managing Conflicts
9.5
Additional Information
9.6
Creating an Active-Active Configuration
9.6.1
Prerequisites on Both Systems
9.6.2
Configuration from Primary System to Secondary System
9.6.3
Configuration from Secondary System to Primary System
10
Configuring Conflict Detection and Resolution
10.1
Overview of the Oracle GoldenGate CDR Feature
10.2
Configuring Oracle GoldenGate CDR
10.2.1
Making the Required Column Values Available to Extract
10.2.2
Configuring the Oracle GoldenGate Parameter Files for Conflict Resolution
10.2.3
Configuring the Oracle GoldenGate Parameter Files for Error Handling
10.2.4
Viewing CDR Statistics
10.3
CDR Example 1: All Conflict Types with USEMAX, OVERWRITE, DISCARD
10.3.1
Table Used in this Example
10.3.2
MAP Statement with Conflict Resolution Specifications
10.3.3
Description of MAP Statement
10.3.4
Error Handling
10.3.5
INSERTROWEXISTS with the USEMAX Resolution
10.3.6
UPDATEROWEXISTS with the USEMAX Resolution
10.3.7
UPDATEROWMISSING with OVERWRITE Resolution
10.3.8
DELETEROWMISSING with DISCARD Resolution
10.3.9
DELETEROWEXISTS with OVERWRITE Resolution
10.4
CDR Example 2: UPDATEROWEXISTS with USEDELTA and USEMAX
10.4.1
Table Used in this Example
10.4.2
MAP Statement
10.4.3
Description of MAP Statement
10.4.4
Error Handling
10.5
CDR Example 3: UPDATEROWEXISTS with USEDELTA, USEMAX, and IGNORE
10.5.1
Table Used in this Example
10.5.2
MAP Statement
10.5.3
Description of MAP Statement
10.5.4
Error Handling
11
Configuring Oracle GoldenGate Security
11.1
Overview of Oracle GoldenGate Security Options
11.2
Encrypting Data with the Master Key and Wallet Method
11.2.1
Creating the Wallet and Adding a Master Key
11.2.2
Specifying Encryption Parameters in the Parameter File
11.2.3
Renewing the Master Key
11.2.4
Deleting Stale Master Keys
11.3
Encrypting Data with the ENCKEYS Method
11.3.1
Encrypting the Data with the ENCKEYS Method
11.3.2
Decrypting the Data with the ENCKEYS Method
11.3.3
Examples of Data Encryption using the ENCKEYS Method
11.4
Managing Identities in a Credential Store
11.4.1
Creating and Populating the Credential Store
11.4.2
Specifying the Alias in a Parameter File or Command
11.5
Encrypting a Password in a Command or Parameter File
11.5.1
Encrypting the Password
11.5.2
Specifying the Encrypted Password in a Parameter File or Command
11.6
Populating an ENCKEYS File with Encryption Keys
11.6.1
Defining Your Own Key
11.6.2
Using KEYGEN to Generate a Key
11.6.3
Creating and Populating the ENCKEYS Lookup File
11.7
Configuring GGSCI Command Security
11.7.1
Setting Up Command Security
11.7.2
Securing the CMDSEC File
11.8
Using Target System Connection Initiation
11.8.1
Configuring the Passive Extract Group
11.8.2
Configuring the Alias Extract Group
11.8.3
Starting and Stopping the Passive and Alias Processes
11.8.4
Managing Extraction Activities
11.8.5
Other Considerations when using Passive-Alias Extract
12
Mapping and Manipulating Data
12.1
Limitations of Support
12.2
Parameters that Control Mapping and Data Integration
12.3
Mapping between Dissimilar Databases
12.4
Deciding Where Data Mapping and Conversion Will Take Place
12.4.1
Mapping and Conversion on Windows and UNIX Systems
12.4.2
Mapping and Conversion on NonStop Systems
12.5
Globalization Considerations when Mapping Data
12.5.1
Conversion between Character Sets
12.5.2
Preservation of Locale
12.5.3
Support for Escape Sequences
12.6
Mapping Columns
12.6.1
Supporting Case and Special Characters in Column Names
12.6.2
Configuring Table-level Column Mapping with COLMAP
12.6.3
Configuring Global Column Mapping with COLMATCH
12.6.4
Understanding Default Column Mapping
12.6.5
Mapping Data Types from Column to Column
12.7
Selecting and Filtering Rows
12.7.1
Selecting Rows with a FILTER Clause
12.7.2
Selecting Rows with a WHERE Clause
12.7.3
Considerations for Selecting Rows with FILTER and WHERE
12.8
Retrieving Before and After Values
12.9
Selecting Columns
12.10
Selecting and Converting SQL Operations
12.11
Using Transaction History
12.12
Testing and Transforming Data
12.12.1
Handling Column Names and Literals in Functions
12.12.2
Using the Appropriate Function
12.12.3
Transforming Dates
12.12.4
Performing Arithmetic Operations
12.12.5
Manipulating Numbers and Character Strings
12.12.6
Handling Null, Invalid, and Missing Data
12.12.7
Performing Tests
12.13
Using Tokens
12.13.1
Defining Tokens
12.13.2
Using Token Data in Target Tables
13
Associating Replicated Data with Metadata
13.1
Overview
13.2
Configuring Oracle GoldenGate to Assume Identical Metadata
13.2.1
Rules for Tables to be Considered Identical
13.3
Configuring Oracle GoldenGate to Assume Dissimilar Metadata
13.3.1
Contents of the Definitions File
13.3.2
Which Definitions File Type to Use, and Where
13.3.3
Understanding the Effect of Character Sets on Definitions Files
13.3.4
Using a Definitions Template
13.3.5
Configuring Oracle GoldenGate to Capture Data-definitions
13.3.6
Adding Tables that Satisfy a Definitions Template
13.3.7
Examples of Using a Definitions File
13.4
Configuring Oracle GoldenGate to Use a Combination of Similar and Dissimilar Definitions
14
Configuring Online Change Synchronization
14.1
Overview of Online Change Synchronization
14.1.1
Initial Synchronization
14.2
Choosing Names for Processes and Files
14.2.1
Naming Conventions for Processes
14.2.2
Choosing File Names
14.3
Creating a Checkpoint Table
14.3.1
Options for Creating the Checkpoint Table
14.3.2
Adjusting for Coordinated Replicat in Oracle RAC
14.4
Creating an Online Extract Group
14.5
Creating a Trail
14.5.1
Assigning Storage for Oracle GoldenGate Trails
14.5.2
Estimating Space for the Trails
14.5.3
Adding a Trail
14.6
Creating a Parameter File for Online Extraction
14.7
Creating an Online Replicat Group
14.7.1
About Classic Replicat Mode
14.7.2
About Coordinated Replicat Mode
14.7.3
About Integrated Replicat Mode
14.7.4
Understanding Replicat Processing in Relation to Parameter Changes
14.7.5
Creating the Replicat Group
14.8
Creating a Parameter File for Online Replication
15
Handling Processing Errors
15.1
Overview of Oracle GoldenGate Error Handling
15.2
Handling Extract Errors
15.3
Handling Replicat Errors during DML Operations
15.3.1
Handling Errors as Exceptions
15.4
Handling Replicat errors during DDL Operations
15.5
Handling TCP/IP Errors
15.6
Maintaining Updated Error Messages
15.7
Resolving Oracle GoldenGate Errors
16
Instantiating Oracle GoldenGate with an Initial Load
16.1
Overview of the Initial-Load Procedure
16.1.1
Improving the Performance of an Initial Load
16.1.2
Prerequisites for Initial Load
16.2
Loading Data with a Database Utility
16.3
Loading data with Oracle Data Pump
16.4
Loading Data from File to Replicat
16.5
Loading Data from File to Database Utility
16.6
Loading Data with an Oracle GoldenGate Direct Load
16.7
Loading Data with a Direct Bulk Load to SQL*Loader
16.8
Loading Data with Teradata Load Utilities
17
Customizing Oracle GoldenGate Processing
17.1
Executing Commands, Stored Procedures, and Queries with SQLEXEC
17.1.1
Performing Processing with SQLEXEC
17.1.2
Using SQLEXEC
17.1.3
Executing SQLEXEC within a TABLE or MAP Statement
17.1.4
Executing SQLEXEC as a Standalone Statement
17.1.5
Using Input and Output Parameters
17.1.6
Handling SQLEXEC Errors
17.1.7
Additional SQLEXEC Guidelines
17.2
Using Oracle GoldenGate Macros to Simplify and Automate Work
17.2.1
Defining a Macro
17.2.2
Calling a Macro
17.2.3
Calling Other Macros from a Macro
17.2.4
Creating Macro Libraries
17.2.5
Tracing Macro Expansion
17.3
Using User Exits to Extend Oracle GoldenGate Capabilities
17.3.1
When to Implement User Exits
17.3.2
Making Oracle GoldenGate Record Information Available to the Routine
17.3.3
Creating User Exits
17.3.4
Supporting Character-set Conversion in User Exits
17.3.5
Using Macros to Check Name Metadata
17.3.6
Describing the Character Format
17.3.7
Upgrading User Exits
17.3.8
Viewing Examples of How to Use the User Exit Functions
17.4
Using the Oracle GoldenGate Event Marker System to Raise Database Events
17.4.1
Case Studies in the Usage of the Event Marker System
18
Monitoring Oracle GoldenGate Processing
18.1
Using the Information Commands in GGSCI
18.2
Monitoring an Extract Recovery
18.3
Monitoring Lag
18.3.1
About Lag
18.3.2
Controlling How Lag is Reported
18.4
Monitoring Processing Volume
18.5
Using the Error Log
18.6
Using the Process Report
18.6.1
Scheduling Runtime Statistics in the Process Report
18.6.2
Viewing Record Counts in the Process Report
18.6.3
Preventing SQL Errors from Filling the Replicat Report File
18.7
Using the Discard File
18.8
Maintaining the Discard and Report Files
18.9
Using the System Logs
18.10
Reconciling Time Differences
18.11
Sending Event Messages to a NonStop System
18.11.1
Running EMSCLNT on a Windows or UNIX System
18.11.2
Running the Collector on NonStop
18.12
Getting Help with Performance Tuning
19
Tuning the Performance of Oracle GoldenGate
19.1
Using Multiple Process Groups
19.1.1
Considerations for using multiple process groups
19.1.2
Using parallel Replicat groups on a target system
19.1.3
Using multiple Extract groups with multiple Replicat groups
19.2
Splitting large tables into row ranges across process groups
19.3
Configuring Oracle GoldenGate to use the network efficiently
19.3.1
Detecting a network bottleneck that is affecting Oracle GoldenGate
19.3.2
Working around bandwidth limitations by using data pumps
19.3.3
Reducing the bandwidth requirements of Oracle GoldenGate
19.3.4
Increasing the TCP/IP packet size
19.4
Eliminating disk I/O bottlenecks
19.4.1
Improving I/O performance within the system configuration
19.4.2
Improving I/O performance within the Oracle GoldenGate configuration
19.5
Managing Virtual Memory and Paging
19.6
Optimizing data filtering and conversion
19.7
Tuning Replicat transactions
19.7.1
Tuning coordination performance against barrier transactions
19.7.2
Applying similar SQL statements in arrays
19.7.3
Preventing full table scans in the absence of keys
19.7.4
Splitting large transactions
19.7.5
Adjusting open cursors
19.7.6
Improving update speed
19.7.7
Set a Replicat transaction timeout
20
Performing Administrative Operations
20.1
Performing Application Patches
20.2
Initializing the Transaction Logs
20.3
Shutting Down the System
20.4
Changing Database Attributes
20.4.1
Changing Database Metadata
20.4.2
Adding Tables to the Oracle GoldenGate Configuration
20.4.3
Coordinating Table Attributes between Source and Target
20.4.4
Performing an ALTER TABLE to Add a Column on DB2 z/OS Tables
20.4.5
Dropping and Recreating a Source Table
20.4.6
Changing the Number of Oracle RAC Threads when Using Classic Capture
20.4.7
Changing the ORACLE_SID
20.4.8
Purging Archive Logs
20.4.9
Reorganizing a DB2 Table (z/OS Platform)
20.5
Adding Process Groups to an Active Configuration
20.5.1
Before You Start
20.5.2
Adding Another Extract Group to an Active Configuration
20.5.3
Adding Another Data Pump to an Active Configuration
20.5.4
Adding Another Replicat Group to an Active Configuration
20.6
Changing the Size of Trail Files
20.7
Switching Extract from Classic Mode to Integrated Mode
20.8
Switching Extract from Integrated Mode to Classic Mode
20.9
Switching Replicat from Nonintegrated Mode to Integrated Mode
20.10
Switching Replicat from Integrated Mode to Nonintegrated Mode
20.11
Switching Replicat to Coordinated Mode
20.11.1
Procedure overview
20.11.2
Performing the switch to coordinated Replicat
20.12
Administering a Coordinated Replicat Configuration
20.12.1
Performing a Planned Re-partitioning of the Workload
20.12.2
Recovering Replicat after an Unplanned Re-partitioning
20.12.3
Synchronizing threads after an Unclean Stop
20.13
Restarting a Primary Extract after System Failure or Corruption
20.13.1
Details of this procedure
20.13.2
Performing the Recovery
21
Undoing Data Changes with the Reverse Utility
21.1
Overview of the Reverse Utility
21.2
Reverse Utility Restrictions
21.3
Configuring the Reverse Utility
21.4
Creating Process Groups and Trails for Reverse Processing
21.5
Running the Reverse Utility
21.6
Undoing the Changes Made by the Reverse Utility
A
Supported Character Sets
A.1
Supported Character Sets - Oracle
A.2
Supported Character Sets - Non-Oracle
B
Supported Locales
C
About the Oracle GoldenGate Trail
C.1
Trail Recovery Mode
C.2
Trail File Header Record
C.3
Trail Record Format
C.4
Example of an Oracle GoldenGate Record
C.5
Record Header Area
C.5.1
Description of Header Fields
C.5.2
Using Header Data
C.6
Record Data Area
C.6.1
Full Record Image Format (NonStop sources)
C.6.2
Compressed Record Image Format (Windows, UNIX, Linux sources)
C.7
Tokens Area
C.8
Oracle GoldenGate Operation Types
C.9
Oracle GoldenGate Trail Header Record
D
About the Commit Sequence Number
E
About Checkpoints
E.1
Extract Checkpoints
E.1.1
About Extract read checkpoints
E.1.2
About Extract write checkpoints
E.2
Replicat Checkpoints
E.2.1
About Replicat checkpoints
E.3
Internal checkpoint information
E.4
Oracle GoldenGate checkpoint tables
Index
Scripting on this page enhances content navigation, but does not change the content in any way.