ogg异构数据同步初始化的2中方法
下面以源端是oracle,目的端是mysql为例
#########################抽取数据不落地#################################
源端oracle:
GGSCI (host01) 4> ADD EXTRACT EINI_1, SOURCEISTABLE
EXTRACT added.
GGSCI (db.cn.oracle.com) 3> EDIT PARAMS EINI_1
EXTRACT EINI_1
SETENV (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID goldengate, PASSWORD goldengate
RMTHOST 192.168.1.135, MGRPORT 7809
RMTTASK REPLICAT, GROUP RINI_1
TABLE hxl.metric; --这里数据量大的话还可以使用filter拆分多个抽取进程
目的端mysql
GGSCI (host02) 4> ADD REPLICAT RINI_1, SPECIALRUN
REPLICAT added.
GGSCI (host02) 5> EDIT PARAMS RINI_1
replicat RINI_1
sourcedefs /u01/goldengate19c_for_mysql/dirdef/defgen.prm
SETENV (MYSQL_UNIX_PORT=/opt/mysql5727/mysql.sock)
targetdb db_hxl@localhost:3306 userid goldengate, password mysql
reperror default, discard
discardfile ./dirrpt/RINI_1.dsc,APPEND,MEGABYTES 1000
MAP hxl.metric,TARGET db_hxl.metric;
在源端(oracle)启动抽取进程,会自动启动目的端的应用进程
GGSCI (host01) 7> START EXTRACT EINI_1
Sending START request to MANAGER ...
EXTRACT EINI_1 starting
处理完成后源端和目的端的进程都会自动停掉
#########################抽取数据落地#################################
源端oracle
1.编辑初始化抽取进程参数
GGSCI>edit params ext_init
EXTRACT ext_init
SETENV (NLS_LANG=AMERICAN_AMERICA.AL32UTF8)
USERID goldengate, PASSWORD goldengate
RMTHOST 192.168.1.135, MGRPORT 7809
rmtfile ./dirdat/ei, maxfiles 999999, megabytes 1500, append
TABLE hxl.metric;
2.添加抽取进程并启动
GGSCI>add extract ext_init, SOURCEISTABLE
GGSCI>start ext_init
这个时候日志会同步到mysql端的dirdat目录下,主库的抽取进程执行完成后会自动停掉
目的端mysql
1.创建初始化复制进程
GGSCI>edit params rep_init
replicat rep_init
--sourcedefs /u01/goldengate19c_for_mysql/dirdef/defgen.prm
SETENV (MYSQL_UNIX_PORT=/opt/mysql5727/mysql.sock)
targetdb db_hxl@localhost:3306 userid goldengate, password mysql
reperror default, discard
discardfile ./dirrpt/rep_init.dsc,APPEND,MEGABYTES 1000
MAP hxl.metric,TARGET db_hxl.metric;
2.添加checkpoint
GGSCI > dblogin sourcedb db_hxl@192.168.1.135:3306 userid goldengate password mysql
Successfully logged into database.
GGSCI (host135 DBLOGIN as goldengate) 47> add checkpointtable db_oggadmin.checkpoint
Successfully created checkpoint table db_oggadmin.checkpoint.
这里需要提前创建好库db_oggadmin,并赋予权限给到同步的账号goldengate。
3.checkpoint加入到全局文件
GGSCI > edit params ./GLOBALS
checkpointtable db_oggadmin.checkpoint
4.添加复制进程
GGSCI > add replicat rep_init, exttrail ./dirdat/ei,checkpointtable db_oggadmin.checkpoint
REPLICAT added.
5.启动
GGSCI>start rep_init
检查数据同步完成后需要手工停掉复制进程并删除
GGSCI>stop rep_init
GGSCI>delete replicat rep_init
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?