1.表GGS_DDL_HIST由來
這張表是在GLOBALS裡面參數DDLTABLE指定的,若是沒有指定預設就是這個表名GGS_DDL_HIST
此表記錄了被goldengate處理過的DDL,也就是通過goldengate同步到對端的DDL
GGSCI (TEST)> EDIT PARAMS ./GLOBALS
DDLTABLE GGS_DDL_HIST
2.定時清理表GGS_DDL_HIST
goldengate不建議用truncate或delete去清理表GGS_DDL_HIST,
是以我們需要在mgr裡面配置參數PURGEDDLHISTORY
PURGEDDLHISTORY {, <max rule>}[, <min rule>][, <frequency>]
<max rule>--MAXKEEPHOURS n --删除GGS_DDL_HIST表裡那些n小時沒有修改的行 --MAXKEEPDAYS n --删除GGS_DDL_HIST表裡那些n天沒有修改的行
<min rule>--MINKEEPHOURS n --至少保留GGS_DDL_HIST表裡那些n小時沒有修改的行 --MINKEEPDAYS n --至少保留GGS_DDL_HIST表裡那些n天沒有修改的行 <frequency> --FREQUENCYMINUTES n --每n分鐘清理一次 --FREQUENCYHOURS n --每n小時清理一次
例如:
PURGEDDLHISTORY MINKEEPDAYS 3 ,MAXKEEPDAYS 5 ,FREQUENCYHOURS 1
配置了以上參數到mgr裡面,還需要配置通路資料庫的賬号密碼,不然也起不到清理的作用 增加配置如下:
SOURCEDB <database_name>@<host_name> ,userid username ,password goldengate
這樣才能登陸進去了清理表
具體配置如下:
edit params mgr
PURGEDDLHISTORY MINKEEPDAYS 3,MAXKEEPDAYS 5,FREQUENCEYHOURS 1 SOURCEDB [email protected], userid goldengate ,password goldengate123