首页 > 数据库 > Oracle > GoldenGate在异构环境下的复制
今天一个网友问我这样一个问题,如何实现把源端3个字段的表中的内容复制到目标端2个字段的表中。这个问题我想很多朋友也会遇到。现在我把我实现的思路拿出来给大家分享,希望对大家的学习有所帮助。
在开始我们的实验之前先明确几个参数和概念:
assumetargetdefs:Use the ASSUMETARGETDEFS parameter when the source and target tables specified with a MAP statement have identical column structure, such as when synchronizing a hot site.
SOURCEDEFS:Source definitions are required when using GoldenGate in a heterogeneous synchronization environment, where source and target table structures are different. To generate the source-definitions file, use the DEFGEN utility. Transfer the file to the intermediary or target system before starting the data pump or Replicat.
开始我们的实验:
实验环境:
oracle 10G
source table ggs.qs(id,name,address)
target table ggt.qt (id,name)
使用defgen建立源表定义文件
1、编辑defgen文件
DEFSFILE qs.def
userid goldengate,password goldengate
table ggs.qs;
2、执行defgen命令
defgen param dirprm/defgen.prm
3、把生成的def文件传输到目标端
编译GoldenGate的参数:
ext1.prm
extract ext1
userid goldengate,password goldengate
rmthost 127.0.0.1, mgrport 7809
rmttrail d:\ggs\dirdat\r1
dynamicresolution
table ggs.qs,cols(id,name);
rep1.prm
replicat rep1
userid goldengate,password goldengate
SOURCEDEFS qs.def
reperror default,discard
discardfile d:\ggs\dirrpt\rep1.dsc,append
dynamicresolution
map ggs.qs, target ggt.qt;
启动GoldenGate进程进行验证吧。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/196700/viewspace-1154534/ ,如需转载,请注明出处,否则将追究法律责任。