Kettle初步测试

需求

从MS Sql Server迁移数据到MySQL中
环境信息:

  1. Window10 64位
  2. pdi-ce-8.2.0.0-342
  3. SqlServer2017 Docker版本
  4. MySQL5.7.23 Docker版本

操作

软件准备

pdi-ce-8.2.0.0-342.zip版本下载
解压出该版本,运行Sqoon.bat即可

Kettle初步测试_第1张图片
image.png

流程配置

新建转换

打开Kettle软体,新建一个转换任务,“文件”-->“新建”-->“转换

Kettle初步测试_第2张图片
kettle-2.png

配置SqlServer源数据库

在“核心对象”-->“输入”-->“表输入”,将“表输入”图标直接拖拽到右侧区域


Kettle初步测试_第3张图片
kettle-2-1.png

没有SqlServer jar包导致JDBC测试失败,解决方法就是下载mssql-jdbc-7.0.0.jre8.jar存入到lib目录下。


Kettle初步测试_第4张图片
kettle-2-2-error.png
Kettle初步测试_第5张图片
kettle-2-2-ok.png

获取目标表


Kettle初步测试_第6张图片
kettle-2-3-1.png

配置“字段选择”

过滤,转换字段信息

Kettle初步测试_第7张图片
kettle-3-1-1.png
Kettle初步测试_第8张图片
kettle-3-1-2.png

双击“字段选择”图标打开配置界面

“选择和修改窗口”:可以修改字段名称

“移除”:可以选择不需要传输数据的列,选择后将不会传输此字段里的值到目标表,我们这里选择的是TS字段,因为此字段是timestamp类型数据(时间戳)

“元数据”:在此可以对源数据表中的所有字段进行转换设置,比如类型,长度,精度,字符集等,如果想一次性将源表的所有字段均加载进来的话,点击右侧“获取改变的字段”。

Kettle初步测试_第9张图片
kettle-3-1-3.png
Kettle初步测试_第10张图片
kettle-3-1-4.png

配置“插入/更新”---目标数据库

Kettle初步测试_第11张图片
kettle-4-1-1.png
Kettle初步测试_第12张图片
kettle-4-1-2.png
  1. 新建我们需要导入的目标数据库连接,按照上面的步骤教程新建连接,

  2. “浏览”选择需要导入数据的table

  3. 在此区域内选择查询数据时依据的字段,其实也就是根据此字段来判断两个表中的数据是否是同一笔记录

  4. 点击“获取和更新字段”可以在“更新字段”区加载所有字段,注意选择是否所有字段都需要更新数据,我在这里将carid的更新状态改成了Y。

Kettle初步测试_第13张图片
kettle-4-1-3.png

校验连接情况

Kettle初步测试_第14张图片
kettle-4-2-1.png

出现报错信息,根据详细,检查刚才的字段配置内容


Kettle初步测试_第15张图片
kettle-4-2-1-error.png

得到问题原因


Kettle初步测试_第16张图片
kettle-4-2-2-change.png
Kettle初步测试_第17张图片
kettle-4-2-3.png
Kettle初步测试_第18张图片
kettle-4-2-3-ok.png

测试执行任务

Kettle初步测试_第19张图片
kettle-5-1-1-ok.png

执行结果

源数据库


Kettle初步测试_第20张图片
sqlserver-1.png

目标数据库


Kettle初步测试_第21张图片
mysql-1.png

定时任务

新建作业


Kettle初步测试_第22张图片
kettle-5-1.png

部署作业


Kettle初步测试_第23张图片
kettle-5-2.png

设置执行频率


Kettle初步测试_第24张图片
kettle-5-3-1.png

选择执行任务项
Kettle初步测试_第25张图片
kettle-5-3-2.png
Kettle初步测试_第26张图片
kettle-5-4.png

你可能感兴趣的:(Kettle初步测试)