zoukankan      html  css  js  c++  java
  • ogg-oracle to sqlserver

      oracle用ogg同步到sqlserver的资源非常少,所以亲测过后立马记下来,分享给那些需要的人们。如果不是被逼无奈,建议还是用sqlserver自带的复制订阅,配置比较简单。

    环境:

     source:  54      Centos7   oracle12.2           ogg12.3

     target  :    52   Windows   sqlserver2012     ogg12.3

    建议不要用oracle12.2  还是用12.1吧。ogg尽量比oracle版本新一点。如ogg12.3 > oracle12.2。

    配置参数:

    source:

    1. 添加defgen参数文件(由于是异构数据库之间的传输,需要转换字段类型,需用到defgen工具生成定义文件)

    GGSCI (tmis-3 as c##ggadmin@orcl/CDB$ROOT) 16> view params defgen  
    
    defsfile /data/ogg/dirdef/tmisuser.def
    userid system@tmis,password Sjtsoft123
    
    TABLE tmis.tmisuser.PR_Practitioner;
    

    2. 运行defgen工具生成定义文件
    进入ogg安装目录

    ./defgen paramfile /data/ogg/dirprm/defgen.prm

    会在dirdef目录下生成一个tmisuser.def的定义文件

    3.建立ogg用户 赋权限

    略:

    4.添加mgr
    
    GGSCI (WIN-GRANHIGH6KV) 1> view params mgr
    PORT 7809
    AUTOSTART EXTRACT *
    AUTORESTART EXTRACT *,RETRIES 3, WAITMINUTES 5, RESETMINUTES 10
    5.添加全局参数
    
    GGSCI (WIN-GRANHIGH6KV) 2> view params ./GLOBALS
    GGSCHEMA c##ggadmin
     6.添加抽取进程
    GGSCI (WIN-GRANHIGH6KV) 3> view params ext5452
    
    extract ext5452
    SETENV(ORACLE_SID='orcl')
    userid c##ggadmin,password ggadmin
    exttrail /data/ogg/dirdat/ea 
    DYNAMICRESOLUTION
    GETTRUNCATES
    
    TABLE tmis.tmisuser.PR_Practitioner;
    
    7.添加投递进程:
    
    GGSCI (WIN-GRANHIGH6KV) 4> view params p5452
    
    extract p5452
    SETENV(ORACLE_SID='orcl')
    userid c##ggadmin,password ggadmin
    rmthost 10.1.2.52,mgrport 7809
    rmttrail D:oggdirdatpb
    PASSTHRU
    
    TABLE tmis.tmisuser.PR_Practitioner;
    
    8.添加表级附加日志
    
    add trandata tmis.tmisuser.PR_Practitioner
    
    --添加抽取进程
    add extract ext5452,integrated tranlog,begin now				  
    add exttrail /data/ogg/dirdat/ea,extract ext5452
    
    --注册抽取进程
    REGISTER EXTRACT ext5452 DATABASE CONTAINER(tmis)
    
    --添加投递进程
    add extract p5452,exttrailsource /data/ogg/dirdat/ea,begin now
    add rmttrail D:oggdirdatpb,extract p5452
    

    target:

    1.配置ODBC数据源
    控制面板-管理工具-数据源(ODBC),添加系统DNS,取名为 tmisdb,注意择驱动程序类型为SQL Server Native Client 11.0
    
    GGSCI (ZJPC) 2> view params mgr
    port 7809
    ACCESSRULE, PROG *, IPADDR 10.1.2.54, ALLOW
    2.添加checkpointtable(建议添加,stop rep后会产生一个检查点,start之后会继续同步)
    GGSCI (ZJPC) 3> view params ./globals
    checkpointtable dbo.ckp
    
    GGSCI (tmis-5) 1> edit params ./globals
    checkpointtable dbo.ckp
    GGSCI (tmis-5) 1> dblogin sourcedb tmisdb userid sa password admin@123
    GGSCI (tmis-5) 1> add checkpointtable dbo.ckp
    3.添加复制rep进程:
    
    GGSCI (ZJPC) 4> view params rep5452
    
    replicat rep5452
    sourcedefs D:oggdirdef	misuser.def
    targetdb tmisdb userid sa, password admin@123
    reperror default,discard
    discardfile D:oggdirrpt
    pl.dsc append
    gettruncates
    handlecollisions
    
    MAP tmis.tmisuser.PR_Practitioner,TARGET dbo.PR_Practitioner;
    
    --添加复制进程
    add replicat rep5452,exttrail D:oggdirdatpb,begin now,checkpointtable dbo.ckp
    

    启动进程,同步正常。但是数据初始化不太好弄,只想到init load 进程抽取,但是出现抽取数据不全,汉字乱码现象,打算改用kettle试试初始化俩个数据库,不知道有没有什么好的方法。希望各位网友给点帮助。

     

  • 相关阅读:
    Flex4之关于Embed外部资源的使用方法总结
    Flex tree的开发 后台数据连接
    Flex4之Tree开发
    Flex自定义组件开发
    解决AS3请求数据的“安全沙箱冲突”问题
    purMVC代码备份
    译:如何配置Red5应用程序
    关于RED5——配置文件详解
    关于socket使用Amf直接进行对象传输的
    垃圾回收机制
  • 原文地址:https://www.cnblogs.com/ZHUJIBlogs/p/8310785.html
Copyright © 2011-2022 走看看