Oracle GoldenGate sample parameter files
总结:
一直以来对oracle goldengate许多参数比较疑惑,正好在MOS看到这个文章,转载到BLOG,以备参考
Objective: This paper provides sample example of Oracle GoldenGate parameter files that can be used to configure Oracle GoldenGate replication setup inline with recommended best practices. The example is generic and can serve as a starting point for a more customized Oracle GoldenGate implementation
Process name: Manager
Description: Manager is GoldenGate's parent process and is responsible for the management of GoldenGate processes, resources, user interface, and the reporting of thresholds and errors.
Manager parameter file (Sample)
-- Manager port number
PORT <port number>
-- As a Manager parameter, PURGEOLDEXTRACTS allows to manage trail
-- files in a centralized fashion and take into account multiple
-- processes.
PURGEOLDEXTRACTS <path to the trail file>, USECHECKPOINTS, MINKEEPHOURS <"x" hours> MINKEEPFILES <"y" number of files>
-- Start one or more Extract and Replicat processes automatically after -- they fail. AUTORESTART provides fault tolerance when something
-- temporary interferes with a process, such as intermittent network
-- outages or programs that interrupt access to transaction logs.
AUTORESTART EXTRACT *, RETRIES <x>, WAITMINUTES <y>, RESETMINUTES <z>
--This is to specify a lag threshold that is considered critical,
--and to force a warning message to the error log. Lagreport parameter
--specifies the interval at which manager checks for extract / replicat --lag.
LAGREPORTMINUTES <x>
LAGCRITICALMINUTES <y>
Process name: Extract
Description: The Extract process captures either full data records or transactional data changes, depending on configuration parameters, and then sends the data to a target system to be applied to target tables or processed further by another process, such as a load utility.
Extract parameter file (Sample)
-- ###################################################################
-- Runcmd: ADD EXTRACT <extract name>, TRANLOG, BEGIN NOW
-- Runcmd: ADD EXTTRAIL <extract trail path/two character trail id> ,
-- EXTRACT <extract name>, Megabytes <n>
-- Name of the extract process. Limited to 8 charecters.
EXTRACT <Extract name>
-- DB environment settings
SETENV (ORACLE_HOME = "<Oracle home path>" )
SETENV (ORACLE_SID="<Oracle sid>")
-- OGG database user login
USERID <username> password <encrypted password>, encryptkey default
-- Local trail info
EXTTRAIL <extract trail path/two character trail id>
-- Prevent data looping. This is generally used in bi-directional
-- configuration
TRANLOGOPTIONS EXCLUDEUSER <Replicat username>
-- ASM login info (Oracle only. If db is using ASM)
TRANLOGOPTIONS ASMUSER sys@<connect string>, ASMPASSWORD <encrypted password>, encryptkey default
--DBLOGREADER enables Extract to use a read buffer size of up to 4 MB --- in size. A larger buffer may improve the performance of Extract when -- redo rate is high. The db has to be 10.2.0.5 or higher to use
-- this feature. If DBLOGREADER parameter is in place then the above
-- ASMUSER parameter should not be used.
TRANLOGOPTIONS DBLOGREADER, DBLOGREADER BUFSIZE [x], BUFSIZE [y]
--DDL replication parameters
DDL INCLUDE ALL, EXCLUDE OBJNAME "<schema name>.<object name> "
DDLOPTIONS ADDTRANDATA
--Discard file location.
DISCARDFILE <diacard file path/<discard file name.dsc>, APPEND Megabytes <n>
-- Use the DISCARDROLLOVER parameter to set a schedule for aging discard --files.
DISCARDROLLOVER AT <hh:mi> on <day of the week>
-- Use the REPORTROLLOVER parameter to force report files to age on a
-- regular schedule, instead of when a process starts
REPORTROLLOVER AT <hh:mi> on <day of the week>
-- Use the REPORTCOUNT parameter to report a count of transaction
-- records that Extract or Replicat processed since startup
REPORTCOUNT EVERY <n> HOURS, RATE
-- Use the FETCHOPTIONS parameter to control certain aspects of the way -- that GoldenGate fetches data
FETCHOPTIONS, USESNAPSHOT, NOUSELATESTVERSION, MISSINGROW REPORT
STATOPTIONS REPORTFETCH
-- Warn for long running txns
WARNLONGTRANS <n>H, CHECKINTERVAL <n>m
-- List of tables
Table <source schema name>.<table name>;
..
Pump (Extract) Parameter file (Sample)
-- Runcmd: ADD EXTRACT <pump name>, EXTTRAILSOURCE <extract trail
-- Path/two character trail id>
-- Runcmd: ADD RMTTRAIL <pump trail path/two character trail id> ,
-- EXTRACT <pump name>, Megabytes <n>
-- Name of the Pump process. Limited to 8 charecters.
EXTRACT <Pump name>
-- Oracle environment settings
SETENV (ORACLE_HOME = "<Oracle home path>" )
SETENV (ORACLE_SID="<Oracle sid>")
-- In passthru mode GoldenGate pump process cascades captured data from -- source to target without logging in to the source database
Passthru
-- Remote host and remort manager port to write trail
RMTHOST <Remote hostname>, MGRPORT <Target manager port number>
-- Remote trail info
RMTTRAIL <extract trail path/two character trail id>
--Discard file location.
DISCARDFILE <diacard file path/<discard file name.dsc>, APPEND Megabytes <n>
-- Use the DISCARDROLLOVER parameter to set a schedule for aging discard --files.
DISCARDROLLOVER AT <hh:mi> on <day of the week>
-- Use the REPORTROLLOVER parameter to force report files to age on a
-- Regular schedule, instead of when a process starts
REPORTROLLOVER AT <hh:mi> on <day of the week>
-- Use the REPORTCOUNT parameter to report a count of transaction
-- Records that Extract or Replicat processed since startup
REPORTCOUNT EVERY <n> HOURS, RATE
-- List of tables
Table <source schema name>.<table name>;
Process name: Replicat
Description: The Replicat process reads data extracted by the Extract process and applies it to target tables or prepares it for use by another application, such as a load application.
Replicat parameter file
###################################################################
-- Runcmd: ADD REPLICAT <REPLICAT name>, EXTTRAIL <trail file path/two -- character trail id>
-- Name of the replicat process. Limited to 8 charecters.
REPLICAT <Replicat name>
-- Oracle environment settings
SETENV (ORACLE_HOME = "<Oracle home path>" )
SETENV (ORACLE_SID= "<Oracle sid>")
SETENV (NLS_LANG = ="<Target db charecterset>")
-- OGG database user login
USERID <username> password <encrypted password>, encryptkey default
--Discard file location.
DISCARDFILE <diacard file path/<discard file name.dsc>, APPEND Megabytes <n>
--DDL replication parameters
DDL INCLUDE ALL, EXCLUDE OBJNAME "<schema name>.<object name>"
DDLOPTIONS REPORT
-- The following parameter speeds up replicat processing rate. The
-- parameter alters the replicat oracle session to not wait for commits -- to be persisted to the redo.
SQLEXEC "ALTER SESSION SET COMMIT_WRITE = NOWAIT"
-- Use the BATCHSQL parameter to increase the performance of Replicat. -- BATCHSQL causes Replicat to organize similar SQL statements into arrays and apply -- them at an accelerated rate.
BATCHSQL
-- Use the DISCARDROLLOVER parameter to set a schedule for aging discard --files.
DISCARDROLLOVER AT <hh:mi> on <day of the week>
-- Use the REPORTROLLOVER parameter to force report files to age on a
-- regular schedule, instead of when a process starts
REPORTROLLOVER AT <hh:mi> on <day of the week>
-- Use the REPORTCOUNT parameter to report a count of transaction
-- records that Extract or Replicat processed since startup
REPORTCOUNT EVERY <n> HOURS, RATE
-- List of tables (MAP statements)
MAP <source schema name>.<table name>, TARGET <target schema name>.<tablename>;
..
..
GLOBALS file
The GLOBALS file stores parameters that relate to the GoldenGate instance as a whole, as opposed to runtime parameters for a specific process.
Globals parameter file
-- Specifies the name of the Manager process when it is installed as a Windows service.
MGRSERVNAME <mgr service name>
-- Specifies a default checkpoint table
CHECKPOINTTABLE <owner.tablename>
-- Specifies the name of the schema that contains the database objects that supportDDL
-- synchronization for Oracle
GGSCHEMA <schema name>
-- Specifies a non-default name for the DDL history table that supports DDL
-- synchronization for Oracle.
DDLTABLE <table name>
-- Specifies a non-default name for the DDL marker table that supports DDL
-- synchronization for Oracle
MARKERTABLE <table name>