zzss 发表于 2018-9-14 11:45:33

Oracle goldengate同步sql server to oracle

  准备工作,在sql server机器上建立odbc连接
  一、初始化加载数据
  1、source端
  1)添加extract进程
  ADD EXTRACT einito, SOURCEISTABLE
  edit param einito
  --以下添加到einito.prm文件中
  EXTRACT einito
  SOURCEDB mssql_test
  RMTHOST 127.0.0.1, MGRPORT 7815
  RMTTASK REPLICAT, GROUP rinitm
  TABLE dbo.t1;
  2)生成defgen文件
  edit params defgen
  ---以下为defgen.prm中内容
  defsfile F:\ogg\mssql\dirdef\t1.def
  sourcedb mssql_test
  table dbo.t1;
  --退出ggsci(ogg安装目录dos下)
  exit
  defgen paramfile F:\ogg\mssql\dirprm\defgen.prm
  2、target端
  1)replicat 进程
  ADD REPLICAT rinitm, SPECIALRUN
  edit params rinitm
  --以下内容在rinitm.prm文件中
  replicat rinitm
  sourcedefs F:\ogg\oracle\dirdef\t1.def
  SETENV (NLS_LANG =AMERICAN_AMERICA.ZHS16GBK)
  USERID chf, PASSWORD xifenfei
  DISCARDFILE F:\ogg\oracle\dirrpt\RINItm.dsc, append
  MAP "dbo.t1", TARGET CHF.T1_1;
  二、数据同步
  1、source端
  1)添加附件日志
  dblogin sourcedb mssql_test
  add trandata dbo.t1
  2)摄取进程(extract)
  add extract extm,tranlog,begin now
  ADD EXTTRAIL F:\ogg\mssql\dirdat\ms, EXTRACT EXTM
  edit param extm
  --以下为extm.prm内容
  extract extm
  SOURCEDB mssql_test
  exttrail F:\ogg\mssql\dirdat\ms
  dynamicresolution
  gettruncates
  tranlogoptions managesecondarytruncationpoint
  TABLE dbo.t1;
  3)传递进程(data pump extract )
  ADD EXTRACT pump1, EXTTRAILSOURCE F:\ogg\mssql\dirdat\ms, BEGIN now
  add rmttrail F:\ogg\oracle\dirdat\or extract pump1
  edit params pump1
  --以下为pump1.prm内容
  extract pump1
  SOURCEDB mssql_test--需要,不然不能获得数据
  rmthost 127.0.0.1, mgrport 7815
  rmttrail F:\ogg\oracle\dirdat\or
  PASSTHRU
  gettruncates
  TABLE dbo.t1;
  2、target端
  1)设置检查点表
  edit params ./GLOBALS
  --下面一句为GLOBALS文件中内容
  CHECKPOINTTABLE ogg.chkpoint
  dblogin userid ogg,password xifenfei
  ADD CHECKPOINTTABLE ogg.chkpoint
  2)replicat进程
  add replicat repl exttrail F:\ogg\oracle\dirdat\or,begin now,checkpointtable ogg.chkpoint
  editparams repl
  --以下为repl.prm中内容
  replicat repl
  SETENV (NLS_LANG =AMERICAN_AMERICA.ZHS16GBK)
  userid ogg,password xifenfei
  sourcedefs F:\ogg\oracle\dirdef\t1.def
  reperror default,discard
  discardfile F:\ogg\oracle\dirtmp\repsz.dsc,append,megabytes 100
  gettruncates
  MAP "dbo.t1", TARGET CHF.T1_1;
  note:
  因为defgen中的表名为小写,所以在replicat相关进程中,map表需要使用双引号小写
  oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html

页: [1]
查看完整版本: Oracle goldengate同步sql server to oracle