GOLDENGATE常用引數

shilei1發表於2014-05-17

概述

所有的GoldenGate程式均有引數檔案 程式均有引數檔案 所有的 Manager Extract Replicat Utilities 所有引數均有預設配置 實際應用只需對小部分引數進行配置 所有引數檔案均放在 ./dirprm目錄下 目錄下 預設透過程式名進行查詢.

Manager引數 引數

2012年5月11日星期五 年 月 日星期五

MANAGER 引數舉例
PORT 7809 DYNAMICPORTLIST 7840-7850 PURGEOLDEXTRACTS /ggs/dirdat/rt*, USECHECKPOINTS AUTOSTART ER * AUTORESTART EXTRACT *, WAITMINUTES 2, RETRIES 5 LAGREPORTHOURS 1 LAGINFOMINUTES 3 LAGCRITICALMINUTES 5

MANAGER Parameters – Port Management

Parameter
AUTOSTART

Description
指定在mgr啟動時自動啟動那些程式 指定在 啟動時自動啟動那些程式. 啟動時自動啟動那些程式
AUTOSTART ER * AUTOSTART extract extsz

AUTORESTART

指定在mgr可以定時重啟那些程式。可以在網路中 可以定時重啟那些程式。 指定在 可以定時重啟那些程式 斷等故障恢復後自動重起,避免人工干預. 斷等故障恢復後自動重起,避免人工干預
AUTORESTART ER *, WAITMINUTES 5, RETRIES 3

DYNAMICPORTLIST

指定GoldenGate可以使用那些埠接受 可以使用那些埠接受extract傳送 指定 可以使用那些埠接受 傳送 過來的資料. 過來的資料
DYNAMICPORTLIST 7840-7850

PORT

制定GoldenGate的mgr程式使用哪個 TCP/IP埠偵 的 制定 程式使用哪個 埠偵 聽請求. 聽請求
PORT 7809

MANAGER Parameters – Event Management

Parameter
LAGCRITICAL

Description
指定認為超過此時間即為嚴重錯誤的延遲最大值, 指定認為超過此時間即為嚴重錯誤的延遲最大值,如果延遲達到 此時間值則會在ggserr.log裡面寫入一條 裡面寫入一條error資訊 此時間值則會在 裡面寫入一條 資訊
LAGCRITICALMINUTES 10

LAGINFO

指定一個延遲時限,如果延遲達到此時間值則會在 指定一個延遲時限,如果延遲達到此時間值則會在ggserr.log裡面 裡面 寫入一條info資訊 寫入一條 資訊
LAGINFOMINUTES 3

LAGREPORT PURGEOLDEXTRAC TS

指定在ggserr.log中報告延遲的時間間隔 中報告延遲的時間間隔. 指定在 中報告延遲的時間間隔
LAGREPORTHOURS 1

定義自動刪除過時的佇列以節省硬碟空間。 定義自動刪除過時的佇列以節省硬碟空間。一般按照兩個規則來 刪除:首先,要滿足檢查點要求,沒有使用過的佇列不能刪除, 刪除:首先,要滿足檢查點要求,沒有使用過的佇列不能刪除, 保證無資料丟失;其次,可以保留一定的天數。 保證無資料丟失;其次,可以保留一定的天數。只有當已經使用 過且超過設定的天數後的佇列會被自動刪除。 過且超過設定的天數後的佇列會被自動刪除。
purgeoldextracts /backup/goldengate/dirdat/*,usecheckpoints, minkeepdays 7

Extract 引數概覽
抽取程式有以下方面引數: 抽取程式有以下方面引數 Checkpoint 複製目標 Local System Multiple Remote Systems One to many GoldenGate Trails 資料來源 Which Tables Which Rows and Columns Which Operations 資料影射和變換

Extract引數檔案舉例 – 日誌抽取程式 引數檔案舉例
extract extsz userid goldengate, password ******* --REPORT AT 01:59 --reportrollover at 02:00 --transmemory directory (/backup/goldengate/dirtmp,8G,4G),ram 2G,transram 500M tranlogoptions rawdeviceoffset 0 --warnlongtrans 12h, checkintervals 30m exttrail /backup/goldengate/dirdat/sz dynamicresolution numfiles 2000 tableexclude tableexclude tableexclude tableexclude tableexclude ctais2.TMP_*; ctais2.BAK_*; ctais2.MLOG$_*; ctais2.RUPD$_*; ctais2.KJ_*;

table ctais2.*;

Extract引數檔案舉例 – 傳輸程式 引數檔案舉例
extract dpesz setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK ) passthru REPORT AT 01:59 reportrollover at 02:00 transmemory directory (/backup/goldengate/dirtmp,8G,4G), ram 2G,transram 500M --threadoptions iolatencydelay 3000 rmthost 99.16.1.12,mgrport 7809, compress rmttrail /oradata/goldengate/dirdat/sz dynamicresolution numfiles 3000 table ctais2.*;

Extract – Table引數 引數
Syntax:
TABLE [, WHERE ()] [, FILTER ()] [, KEYCOLS ()] [, COLS () | [ , ]) ] [, COLSEXCEPT () | [ , ]) ] [, FETCHCOLS () | [ , ]) ] [, FETCHCOLSEXCEPT () | [ , ]) ] [, SQLEXEC ] [, FETCHBEFOREFILTER ] [, SQLPREDICATE “WHERE ” ] [, COLMAP ()] [, , , …] ;

注意: 的結尾有一個分號。 注意:TABLE的結尾有一個分號。 的結尾有一個分號

Extract引數(一) 引數( 引數
Parameter
CHECKPARAMS

Description
如果加入該引數,表示下次執行只是檢查一下語法, 如果加入該引數,表示下次執行只是檢查一下語法,並不實際 執行程式。 執行程式。 注意:該命令只能檢查一些簡單語法, 注意:該命令只能檢查一些簡單語法,並不能保證引數檔案是 完全正確的。 完全正確的。 註釋行,也可以用兩個中劃線 代替 代替. 註釋行,也可以用兩個中劃線--代替 --checkparams表示本行已經被註釋掉 表示本行已經被註釋掉 定義抽取程式的名字 可以將外部檔案的內容包含到本引數檔案中來。 可以將外部檔案的內容包含到本引數檔案中來。用於將一些可 以重複利用的引數檔案部分內容隔離出來,便於統一修改。 以重複利用的引數檔案部分內容隔離出來,便於統一修改。 Obey tables.txt 定義所需要排除的表。如果在 裡面定義了使用萬用字元, 定義所需要排除的表。如果在table裡面定義

了使用萬用字元,那 裡面定義了使用萬用字元 麼可以使用該引數定義排除掉其中的部分表。 麼可以使用該引數定義排除掉其中的部分表。如: tableexclude ctais2.TMP_*; tableexclude ctais2.TEMPTAB;

COMMENT

EXTRACT OBEY

TABLEEXCLUDE

Extract引數(二) 引數( 引數 Parameter
GETUPDATEAFTERS | IGNOREUPDATEAFTERS GETUPDATEBEFORES | IGNOREUPDATEAFTERS GETUPDATES | IGNOREUPDATES

Description
是否在佇列中寫入後影像, 是否在佇列中寫入後影像,預設複製

是否在佇列中寫入前影像, 是否在佇列中寫入前影像,預設不復制

是否複製update操作,預設複製 操作, 是否複製 操作

GETDELETES | IGNOREDELETES GETINSERTS | IGNOREINSERTS GETRUNCATES| IGNORETRUNCATES

是否複製delete操作,預設複製 操作, 是否複製 操作

是否複製insert操作,預設複製 操作, 是否複製 操作

是否複製truncate操作,預設不復制. 操作,預設不復制 是否複製 操作

Extract引數(三) 引數( 引數
Parameter
RMTHOST

Description
指定目標系統及其GoldenGate Manager程式的埠號,也用於 程式的埠號, 指定目標系統及其 程式的埠號 定義是否使用壓縮排行傳輸。 定義是否使用壓縮排行傳輸。
rmthost 99.16.1.12,mgrport 7809, compress

RMTTRAIL EXTTRAIL

指定寫入到目標端的哪個佇列。 指定寫入到目標端的哪個佇列。

指定寫入到本地的哪個佇列。 指定寫入到本地的哪個佇列。

SQLEXEC PASSTHRU

執行時首先執行一個sql語句 在extract執行時首先執行一個 語句。 執行時首先執行一個 語句。
sqlexec "Alter session set constraints=deferred"

禁止extract與資料庫互動,適用於 與資料庫互動,適用於Data Pump傳輸程式 禁止 與資料庫互動 傳輸程式 (dpeXX)。 )。 針對extract程式設定系統環境變數。 程式設定系統環境變數。 針對 程式設定系統環境變數
setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK )

GETENV | SETENV

Extract引數(四) 引數( 引數

Parameter
REPORT 定義自動定時報告。 定義自動定時報告。
REPORT AT 01:59

Description

STATOPTIONS

定義每次使用stat時統計數字是否需要重置。 時統計數字是否需要重置。 定義每次使用 時統計數字是否需要重置

REPORTCOUNT

報告已經處理的紀錄條數統計數字。 報告已經處理的紀錄條數統計數字。

TLTRACE

開啟對於資料庫日誌的跟蹤日誌

TRACE/TRACE2

開啟對GoldenGate程式的跟蹤日誌,一般用於除錯。 程式的跟蹤日誌,一般用於除錯。 開啟對 程式的跟蹤日誌

DISCARDFILE

定義discard檔案位置,如果處理中有紀錄出錯會寫入到此檔案 檔案位置, 定義 檔案位置 中。
discardfile /oradata/goldengate/repkj.dsc,append,megabytes 100m

Extrac引數(五) 引數( 引數

Parameter
NUMFILES

Description
定義本extract為最大多少

張表預留空間,預設為500,超過 為最大多少張表預留空間,預設為 定義本 為最大多少張表預留空間 , 500張表需要設定一個比實際表數略大的值。 張表需要設定一個比實際表數略大的值。 張表需要設定一個比實際表數略大的值
numfiles 3000

PURGEOLDEXTRACTS REPORTROLLOVER TRANSMEMORY

程式, 設定。 同mgr程式,可以設定自動刪除佇列,建議在 程式 可以設定自動刪除佇列,建議在mgr設定。 設定 設定切換一個日誌的時間和間隔。 設定切換一個日誌的時間和間隔。
reportrollover at 02:00

設定GoldenGate的抽取程式能夠使用的記憶體大小。如下引數 的抽取程式能夠使用的記憶體大小。 設定 的抽取程式能夠使用的記憶體大小 指定本程式最大隻能佔用2G記憶體 記憶體, 指定本程式最大隻能佔用 記憶體,其中每個事務最大佔用內 存不能超過500M,如果超過則使用指定目錄作為虛擬記憶體, 存不能超過 ,如果超過則使用指定目錄作為虛擬記憶體, 該目錄下的單個檔案大小為4G,最多隻能在該目錄下佔用8G 該目錄下的單個檔案大小為 ,最多隻能在該目錄下佔用 空間作為快取: 空間作為快取:
transmemory directory (/backup/goldengate/dirtmp,8G,4G),ram 2G,transram 500M

Extrac引數(六) 引數( 引數

Parameter
DBOPTIONS

Description
指定對於某種特定資料庫所需要的特殊引數。 指定對於某種特定資料庫所需要的特殊引數。

[SOURCEDB,] USERID ,PASSWORD

指定所要登陸的資料庫名稱,使用者名稱和密碼。對於 指定所要登陸的資料庫名稱,使用者名稱和密碼。對於oracle無需指 無需指 定sourcedb,直接指定使用者名稱和密碼即可。 ,直接指定使用者名稱和密碼即可。 Userid goldengate, password goldengate 指定在解析資料庫日誌時所需要的特殊引數。例如, 指定在解析資料庫日誌時所需要的特殊引數。例如,對於裸設 可能需要加入下列引數: 備,可能需要加入下列引數: tranlogoptions rawdeviceoffset 0

TRANLOGOPTIONS

WARNLONGTRANS

指定對於超過一定時間的長交易可以在ggserr.log裡面寫 裡面寫 指定對於超過一定時間的長交易可以在 入警告資訊。例如,每隔30分鐘檢查一次長交易 分鐘檢查一次長交易, 入警告資訊。例如,每隔 分鐘檢查一次長交易,對於 超過12個小時的進行告警 個小時的進行告警: 超過 個小時的進行告警:
--warnlongtrans 12h, checkintervals 30m

Replicat引數 引數


Replicat 引數概覽

提供如下方面引數: 提供如下方面引數 Checkpoint 資料影射關係 Optional row-level selection criteria Optional column mapping facilities Optional transformation services Optional Stored Procedure or SQL query execution 錯誤處理機制 其它可選引數

Replicat 引數舉例
replicat re

psz setenv ( NLS_LANG = AMERICAN_AMERICA.ZHS16GBK ) userid goldengate, password ***** sqlexec "Alter session set constraints=deferred" REPORT AT 01:59 reportrollover at 02:00 --handlecollisions reperror default,discard discardfile /oradata/goldengate/dirrpt/repsz.dsc,append, megabytes 10 --grouptransops 100 --batchsql assumetargetdefs allownoopupdates dynamicresolution numfiles 3000 --mapexclude CTAIS2.JC_GY_SWWSWH --map CTAIS2.SHOULIXINXI, target CTAIS2.SHOULIXINXI, keycols ( SHOULIBIANHAO ); MAP ctais2.* ,TARGET ctais2.*;

Replicat – MAP引數 引數

MAP , TARGET [, EXCEPTIONSONLY] [, COLMAP ()] [, KEYCOLS ()] [, WHERE ()] [, FILTER ()] ; 注意map語句必須以一個分號結束; 語句必須以一個分號結束; 注意 語句必須以一個分號結束 <source>

Replicat命令(一) 命令( 命令

Parameter
CHECKPARAMS COMMENT

Description
檢查引數語法然後停止。 檢查引數語法然後停止。 註釋行。 註釋行。

REPLICAT

定義程式名稱。 定義程式名稱。
replicat repsz

USERID

指定登陸目標資料庫的使用者名稱和密碼。 指定登陸目標資料庫的使用者名稱和密碼。
Userid goldengate, password 123456

OBEY

將外部檔案包含到引數檔案中。 將外部檔案包含到引數檔案中。

Replicat命令(二) 命令( 命令

Parameter
ASSUMETARGETDEFS

Description
假定兩端資料結構一致使用此引數。 假定兩端資料結構一致使用此引數。

SOURCEDEFS

假定兩端資料結構不一致,使用此引數指定源端的資料 假定兩端資料結構不一致, 結構定義檔案。該檔案需要由GoldenGate工具產生。 工具產生。 結構定義檔案。該檔案需要由 工具產生

MAPEXCLUDE

用於使用在map中使用 匹配時排除掉指定的表,類似 中使用*匹配時排除掉指定的表 用於使用在 中使用 匹配時排除掉指定的表, 于于源端的tablexclude。 于于源端的 。
mapexclude CTAIS2.JC_GY_SWWSWH MAP ctais2.* ,TARGET ctais2.*;

GETDELETES | IGNOREDELETES GETUPDATES / IGNOREUPDATES

是否複製delete操作,預設為複製。 是否複製 操作,預設為複製。 操作

是否複製update操作,預設為複製。 操作,預設為複製。 是否複製 操作

Replicat命令(三) 命令( 命令

Parameter
GETINSERTS | IGNOREINSERTS GETUPDATEAFTERS | IGNOREUPDATEAFTERS GETUPDATEBEFORES | IGNOREUPDATEBEFORES
GETTRUNCATES | IGNORETRUNCATES

Description
是否複製insert操作,預設為複製。 操作,預設為複製。 是否複製 操作

是否讀取後影像,預設為讀取。 是否讀取後影像,預設為讀取。

是否讀取前影像,預設為不讀取。 是否讀取前影像,預設為不讀取。

是否複製truncate操作,預設為不復制。 操作,預設為不復制。 是否複製 操作

allownoopupdates

允許執行無實際變化的update。例如,update

a=a會紀錄一條 。例如, 允許執行無實際變化的 會紀錄一條 update,但是沒有後影像,無法正確構築 語句。 ,但是沒有後影像,無法正確構築where語句。 語句

Replicat命令(四) 命令( 命令 Parameter
REPERROR

Description
定義出錯以後replicat的響應,一般可以定義為兩種: 的響應,一般可以定義為兩種: 定義出錯以後 的響應 Abend,即一旦出現錯誤即停止複製,此為預設配置; ,即一旦出現錯誤即停止複製,此為預設配置; Discard,出現錯誤後繼續複製,只把錯誤的資料放到 ,出現錯誤後繼續複製, discard檔案中。 檔案中。 檔案中
REPERROR DEFAULT, DISCARD

DISCARDFILE

定義出錯資料的輸出檔案。當資料出現錯誤後, 定義出錯資料的輸出檔案。當資料出現錯誤後,可 以用於查詢錯誤原因。 以用於查詢錯誤原因。
discardfile /oradata/goldengate/dirrpt/repsz.dsc,append, megabytes 10

HANDLECOLLISIONS

自動過濾重複時段的資料衝突,用於不能停機執行初始化。 自動過濾重複時段的資料衝突,用於不能停機執行初始化。 開啟該引數後不會將資料錯誤報到discard檔案中。 檔案中。 開啟該引數後不會將資料錯誤報到 檔案中 動態解析表的結構, 使replicat動態解析表的結構,加快啟動速度。預設為每 動態解析表的結構 加快啟動速度。 次啟動解析所有要複製表的結構。 次啟動解析所有要複製表的結構。 呼叫儲存過程或者執行sql語句。 呼叫儲存過程或者執行 語句。可以將返回值作為依據 語句 進行過濾條件,或者使用者改變session變數。 變數。 進行過濾條件,或者使用者改變 變數

DYNAMICRESOLUTION SQLEXEC

Replicat命令(五) 命令( 命令

Parameter
GROUPTRANSOPS

Description
將小的交易合併成為一個大的交易進行提交, 將小的交易合併成為一個大的交易進行提交,減少提交次 降低系統IO消耗 消耗。 數,降低系統 消耗。
grouptransops 100

MAXTRANSOPS BATCHSQL
DBOPTIONS

將大交易拆分,每若干條紀錄提交一次。 將大交易拆分,每若干條紀錄提交一次。
maxtransops 1000

針對批處理中針對某個表的大批次重複操作進行最佳化,提 針對批處理中針對某個表的大批次重複操作進行最佳化, 高批處理的處理速度。 高批處理的處理速度。
定義與資料庫型別相關的特殊處理方式。 定義與資料庫型別相關的特殊處理方式。

NUMFILES PURGEOLDEXTRACTS

定義程式中表的最大資料量, 定義程式中表的最大資料量,預設為 500.

定義自動刪除佇列,一般建議在 程式配置。 定義自動刪除佇列,一般建議在mgr程式配置。 程式配置

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/196700/viewspace-1163234/,如需轉載,請註明出處,否則將追究法律責任。

相關文章