Kettle数据同步 SQLServer到MySQL

Kettle原理和JDBC类似,可以以代码思路思考。

MySQL 连接jar包 mysql-connector-java-5.1.34.jar

SQLServer 连接jar包 sqljdbc42.jar,jstl-1.2.jar

Oracle 连接jar包 ojdbc6.jar

Kettle数据同步有两种方式:

①时间戳方式:在原表中找出时间最大的一条,目标表中where date>原date,写的方式是======输入 --> 输入 -->输出(插入)。

存取数据时最好按时间从小到大排序,因为中途失败时原表最后一条数据还是小于目标表中的数据。

这种方式适用于目标表和原表中有时间字段,如不满足则取第二种方式

 

②触发器方式:触发器方式,即监听目标表中的insert delete update 并在触发器中进行原表中的增删改,缺点是:如果存在断网的

情况会导致一部分的数据丢失。因为在触发器是无法连接到需要同步的数据库。

 

这里选择的是第①种方式进行数据同步:

 

 

需注意图二中需要勾选 和 选择插入数据对的表,语法可用 === 字段 > ? 的方式。

最后已插入的方式,表一用来查询的关键字 即 目标表和原表中满足关系的会对表二中字段进行更新

 

Kettle里可以设置JDK1.8 ,在Spoon.bat编辑中@echo off下一行加

set JAVA_HOME=C:\java\jdk1.8.0_91\bin
set PATH=%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin
set CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

 

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值