OGG_GoldenGate数据表定义方式DEFGEN(案例)

2014-03-09 Created By BaoXinjian

一、摘要


利用DEFGEN工具可以为源端和目标端表生成数据定义文件,当源库和目标库类型不一致时,或源端的表和目标端的表结构不一致时,数据定义文件时必须要有的

生成数据定义文件的步骤

Step1. 编辑defgen文件

Step2. 利用defgen工具生成defgen.prm文件

Step3. 将生成好的数据定义文件ftp二进制模式传输到容灾端对应的目录dirdef

 

二、使用DEFGEN生成数据表定义文件


Step1. 编辑defgen文件

GGSCI> edit param defgen
DEFSFILE dirdef/source.def, PURGE
SOURCEDB gavinprod@gavinprod.com, userid apps, password, apps
TABLE apps.TCUSTMER;
TABLE apps.TCUSTORD;

Step2. 利用defen工具生成defgen.prm文件

[gavinprod ~] > defgen paramfile dirprm/defgen.prm

Step3. 将生成好的二进制文件传输到目标端相应目录的dirdef

scp defgen.prm odellprod.com/opt/oracle/ggate/dirdef

 

三、配置源端进程 - init extract 和 data extract


Step1. initial data load

(1). 在源端添加initial extract

add EXTRACT EXTINIT, SOURCEISTABLE

(2). 确认结果

info EXTRACT *, TASK

(3). 修改init extract进程参数

[gavinprod~] > edit params EXTINIT
EXTRACT EXTINIT
SOURCEDB gavinprod@gavinprod.com, userid apps, password apps
RMHOST gavinprod.com, MGRPORT 7839
RMTTASk REPLICAT, GROUP REPINIT
TABLE apps.TCUSTMGR;
TABLE apps.TCUSTORD;

(4). 目标端添加initial replicat

add replicat REPINIT, SPECIALRUN

(5). 修改init replicat进程参数

[gavinprod~] > edit params REPINIT
REPLICAT REPINIT
USERID ggate, password ggate
discordfile ./dirrpt/REPINIT.dsc, PURGE
SOURCEDEFS ./dirdef/defgen.def
MAP apps.TCUSTMGR, TARGET scott.TCUSTMGR
MAP apps.TCUSTMGR, TARGET scott.TCUSTMGR

(6).  启动inital进程时,只需在源端启动init extract,在目标端会自动复制,无需手工再启init replicat

Step2. 抽取进程与投递进程的配置

(1). 配置抽取进程EXTDATA

GGSCI > add extract EXTDATA, tranlog, begin now
GGSCI > add exttral /opt/oracle/ggate/dir/data/ga, extract EXTDATA, megabytes 25
GGSCI > edit param EXTDATA
extract EXTDATA
setenv (dsquery = "gavinprod")
sourdb gavinprod@gavinprod, userid apps, password apps
extrail /opt/oracle/ggate/dir/data/ga
DYNAMICRESOLUTION
discardfile ./dirrpt/extdata.dsc, purge
TABLE apps.TCUSTMER;
TABLE apps.TCUSTORD;

(2). 配置投递进程DMPDATA

GGSCI > edit params DMPDATA
extract DMPDATA
passthru
rmthost odellprod.com mgrport 7809
rmttrail /opt/oracle/ggate/dirdata
discard file ./dirrpt/dmpdata.dsc, purge
table apps.*;

 

四、配置目标端进程


Step1. 在容灾端配置管理进程MGR

PORT 7809
DYNAMICPORTLIST 7840-7849
AUTOSTART EXTRACT *
AUTORESTART EXTRACT *, RETRIES 5, WAITMINUTES 3
PURGEOLDEXTRACTS ./dirdat/*, usecheckpoints, minkeepdays 3
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

Step2. 配置全局参数

GGSCI > edit params ./GLOBALS
CHECKPOINTTABLE GGATE.ggschkpt

Step3. 添加检查点

GGSCI > add checkpointtable

Step4. 编辑复制进程

GGSCI > edit param REPDATA
REPLICAT REPDATA
USERID ggate, PASSWORD ggate
SOURCEDEFS ./dirdef/defgen.def
discardfile ./dirrpt/eorep.des, PURGE
MAP apps.TCURTMER, TARGET scott.TCURTMER;
MAP apps.TCUSTORD, TARGET scott.TCUSTORD;

 

Thanks and Regards

原文地址:https://www.cnblogs.com/eastsea/p/4232303.html