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用户 赋权限
略:
.添加mgr GGSCI (WIN-GRANHIGH6KV) > view params mgr
PORT
AUTOSTART EXTRACT *
AUTORESTART EXTRACT *,RETRIES , WAITMINUTES , RESETMINUTES
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:\ogg\dirdat\pb
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:\ogg\dirdat\pb,extract p5452
target:
1.配置ODBC数据源
控制面板-管理工具-数据源(ODBC),添加系统DNS,取名为 tmisdb,注意择驱动程序类型为SQL Server Native Client 11.0
GGSCI (ZJPC) > view params mgr
port
ACCESSRULE, PROG *, IPADDR 10.1.2.54, ALLOW
.添加checkpointtable(建议添加,stop rep后会产生一个检查点,start之后会继续同步)
GGSCI (ZJPC) > view params ./globals
checkpointtable dbo.ckp GGSCI (tmis-) > edit params ./globals
checkpointtable dbo.ckp
GGSCI (tmis-) > dblogin sourcedb tmisdb userid sa password admin@
GGSCI (tmis-) > add checkpointtable dbo.ckp
3.添加复制rep进程: GGSCI (ZJPC) 4> view params rep5452 replicat rep5452
sourcedefs D:\ogg\dirdef\tmisuser.def
targetdb tmisdb userid sa, password admin@123
reperror default,discard
discardfile D:\ogg\dirrpt\rpl.dsc append
gettruncates
handlecollisions MAP tmis.tmisuser.PR_Practitioner,TARGET dbo.PR_Practitioner;
--添加复制进程
add replicat rep5452,exttrail D:\ogg\dirdat\pb,begin now,checkpointtable dbo.ckp
启动进程,同步正常。但是数据初始化不太好弄,只想到init load 进程抽取,但是出现抽取数据不全,汉字乱码现象,打算改用kettle试试初始化俩个数据库,不知道有没有什么好的方法。希望各位网友给点帮助。
ogg-oracle to sqlserver的更多相关文章
- 你搞懂 ORACLE、 SQLSERVER、MYSQL与DB2的区别了吗
ORACLE. SQLSERVER.MYSQL与DB2的区别--平台性: Oracle.MYSQL与DB2可在所有主流平台上运行: SQL Server只能在Windows下运行: --安 ...
- oracle与sqlserver部分区别
oracle和sqlserver的区别:1,执行修改操作要接commit,不然数据仅仅只是查看,并不是提交数据2,oracle不能使用select 字段 这种查看方式查看数据:3,oracle存储过程 ...
- ORACLE连接SQLSERVER
一.实验(实验成功) 1.实验目标:ORACLE连接SQLSERVER以及查询数据 2.搭建的环境: oracle 9i 9.0.2.0.1 地址:192.168.40.139 sql2000 的数据 ...
- 采用Hibernate框架的研发平台如何能够真正兼容Oracle和sqlServer数据库
都说Hibernate框架的使用可以很容易的让你的研发平台支持多种不同类型的数据库,但实践表明,这里的“容易”,是相对的. 想让研发平台支持多种数据库,并不是一件简单的事,也可以这么说:并不是只要使用 ...
- Java学习-006-三种数据库连接 MySQL、Oracle、sqlserver
此文主要讲述在初学 Java 时,常用的三种数据库 MySQL.Oracle.sqlserver 连接的源代码整理.希望能对初学 Java 编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激!源 ...
- CTE在Oracle和Sqlserver中使用的差异
CTE是一个很好用的工具,他可以帮助我们清晰代码结构,减少临时表使用,同时oracle和sqlserver都提供支持.但在oracle和sqlserver中使用CTE也存在一定区别. Oracle使用 ...
- NUll在oracle与sqlserver中使用相同与区别
最近在使用Oracle进行开发,遇到很多与以前使用sqlserver的不同语法.今天遇到null在两种数据库上面操作上的差别,在此记录两种数据库上的差异. null 与字符串相加 1.在oracle中 ...
- Oracle/Mysql/SqlServer函数区别
mysql日期和时间格式转换 Linux scp 使用详解 Oracle/Mysql/SqlServer函数区别 2011-07-01 12:34:36| 分类: Mysql技术 | 标签:mys ...
- 【从翻译mos文章】在OGG (Oracle GoldenGate) 正在使用SCHEMATRANDATA如果,需要额外的db patch
在OGG (Oracle GoldenGate) 正在使用SCHEMATRANDATA如果.需要额外的db patch 参考原始: Patches needed to support SCHEMATR ...
- oracle与sqlserver利用函数生成年月日加流水号
最近在做oracle相关的项目,刚接触oracle,与sqlserver语法上还是有区别的 sqlserver : 示例:FX+当前年月日+00001 如下图流水号实力所示 原理: 首先 'FX'是固 ...
随机推荐
- 自学Zabbix1.1-简介
1. 初识Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决 方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利. ...
- angular封装七牛云图片上传,解决同一页面多个上传按钮分别上传
step1:引入文件 引入Plupload *该SDK上传功能集于Plupload插件封装,所以需要下载Plupload; plupload.dev.js 引入qiniu.js为了简便,当时直接从官网 ...
- 【java】io流之字节流转为字符流:java.io.OutputStreamWriter和java.io.InputStreamReader
package 文件操作; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; impo ...
- boost::format(字符串格式化库)
这段时间学习boost库的使用,撰文一方面留以备用,另一方面就是shared精神. format主要是用来格式化std::string字符串以及配合std::cout代替C语言printf() 使用f ...
- InnoDB 逻辑存储结构
本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/80 如果创建表时没有显示的定义主键,mysql会按如下方式创建主 ...
- 童话故事 --- CPU的贴身侍卫ITCM和ICache
"叮铃铃- 叮铃铃-" "谁呀?"黛丝博士打开了家门,"哇,高飞,你怎么来了?" 高飞狗:"好久不见,想来看看你,还买了你最喜欢吃 ...
- Structural Inference of Hierarchies in Networks(网络层次结构推断)
Structural Inference of Hierarchies in Networks(网络层次结构推断) 1. 问题 层次结构是一种重要的复杂网络性质.这篇文章给出了层次结构的精确定义,给出 ...
- Docker(三):Docker仓库配置
1.仓库介绍 仓库(repository)用来集中管理Docker镜像,支持镜像分发和更新. 目前世界上最大最知名的公共仓库是Docker官方的Docker Hub,国内比较知名的有:Docker P ...
- Linux并发连接上百万的配置
To support over 500k users, you *need* - A bits hardware/kernel (AMD64, Opterons) - At least 8GB of ...
- VS 2017 Web项目需要安装Sql Server 2012 Express LocalDB问题
最近在做mvc5的练习 ,结果到了数据库连接这一阶段就出现了问题,开始我以为<add name="MovieDBContext" connectionString=" ...