1. 程式人生 > >增加復制表

增加復制表

傳輸 getenv rand 文件 stop edi 需要 初始 rep

增加復制表

1) 對於新增表,首先要在源端對其加入supplemental log。

GGSCI > dblogin userid goldengate, password goldengate

GGSCI > info trandata <schema>.<table name>

如果不是enable則需要手動加入:

GGSCI > add trandata <schema>.<table name>

2) 在源端系統上ggsci中執行stop extXX停止源端的抓取進程(註意檢查所需最老歸檔日誌是否存在);

3) 在目標端系統上ggsci中執行stop repXX停止目標端的復制進程;

4) 在源端修改ext進程參數,添加新表:

Ggsci> edit param extXX

在文件最後加入一行“table myschema.newtable;” 註意寫全schema和表的名稱。

在目標端修改rep進程所包含的列表文件:

GGSCI> edit param repXX

在assumetargetdefs下面加入一行:

Handlecollisions 註:如果是空表的話不用加此沖突處理參數

結尾加入一行“map ***.XXX, target ***.XXX, filter (@GETENV ("transaction", "csn") > 9543774);”註意寫全schema和表的名稱。

在源端執行exp將該表數據按scn導出;可選步驟,僅用於需要執行初始化的表;如表為新表,可以直接在備份端執行建表sql,然後執行重起即可

在目標端執行imp將該表數據導入;可選步驟,僅用於需要執行初始化的表

在目標端系統上啟動復制進程repXX

GGSCI > start repXX

在源端系統上啟動源端的抓取進程extXX和傳輸進程dpeXX

GGSCI > start er *

在目標端系統上去掉沖突處理(如果不需要去掉沖突處理則無需做此步)

GGSCI > lag repXX

直到AT EOF,停止repXX進程:

ggsci> stop repXX

修改repXX.prm:

ggsci> edit param repXX.prm

在handlecollions前面加—將其註釋掉;

重新啟動repXX:

ggsci> start repXX

即可進入正常復制狀態。

增加復制表