需求:
通過OGG把源端表1同步到目标端表2
但表1和表2的主鍵不一緻
解決方法:
通過OGG的keycols (XXX) 函數在目标端R程序指定主鍵列;
在目标端對源端的主鍵列建立索引。
在源端生成表定義檔案并傳到目标端。
目标端R程序的格式:
edit param RDNYY
Replicat RDNYY
Sourcedefs E:/ggs/dirdef/dednxk001.def ##表定義檔案
handlecollisions
batchsql
SETENV (NLS_LANG = "AMERICAN_AMERICA.AL32UTF8")
Userid goldengate, password goldengate
GROUPTRANSOPS 1000 ##資料1000行送出一次
MAXTRANSOPS 1000
Discardfile E:/ggs/dirrpt/rdnyy.dsc, append, megabytes 100
map DB_DSJFXPT.P_FHYDLGSQY , target EXDB.P_FHYDLGSQY , colmap (usedefaults , OGGTB_SJ= @date ("yyyy-mm-dd hh:mi:ss", "JTS", @GETENV("JULIANTIMESTAMP"))), keycols (S_GUID) ;
##keycols (S_GUID)函數之間有空格,括号内是源端主鍵列。