将Oracle的数据初始化到mysql,使用oracle to mysl 工具将oracle的数据类型映射成mysql的数据类型,并作相应的修改,使mysql可容纳oracle的字段长度,本文执行初始数据,并没有做复制,只是导数据过去,而且源端的oracle数据库是静止的,如果非静止就需要配置抽取进程和应用进程
1.编辑mgr参数
source
edit param mgr
PORT 7819
DYNAMICPORTLIST 7820-7840
AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 2, RESETMINUTES 10
--PURGEOLDEXTRACTS /data/goldengate/dirdat/*, USECHECKPOINTS, MINKEEPDAYS 3
--purgeddlhistory minkeepdays 7, maxkeepdays 10
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45
target
edit param mgr
PORT 7819
DYNAMICPORTLIST 7820-7840
AUTORESTART EXTRACT *,RETRIES 5,WAITMINUTES 2, RESETMINUTES 10
--PURGEOLDEXTRACTS /data/goldengate/dirdat/*, USECHECKPOINTS, MINKEEPDAYS 3
--purgeddlhistory minkeepdays 7, maxkeepdays 10
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45
2.启动mgr
source
start mgr
info all
target
start mgr
info all
3.编辑初始化进程
初始化的进程不需要启动
source
edit param extinit
SOURCEISTABLE
setenv (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
userid goldengate, password goldengate
RMTHOST 10.58.8.26,MGRPORT 7819
RMTFILE /data/goldengate/rmtfile 5000,MEGABYTES 1024
scott.*;
target
edit param repinit
SPECIALRUN
END RUNTIME
setenv (NLS_LANG = AMERICAN_AMERICA.AL32UTF8)
DBOPTIONS HOST 127.0.0.1, CONNECTIONPORT 3306
TARGETDB testdb,userid root,password root_password
EXTFILE /data/goldengate/rmtfile
assumetargetdefs
MAP scott.*, TARGET testdb.*;
---此处可能出现问题,可以先使用dblogin 测试用户是否可以登录mysql数据库,可能会报/tmp/scok的错误,是由于手工编译安装mysql,tmp下没有这个文件,在tmp创文件并ln 到真正的安装目录的sock文件
4.启动初始化
source
cd /data/goldengate/
/data/goldengate/extract paramfile dirprm/extinit.prm reportfile dirrpt/extinit.rpt
target
cd /data/goldengate/
/data/goldengate/replicat paramfile dirprm/repinit.prm reportfile dirrpt/repinit.rpt