需求
从MS Sql Server迁移数据到MySQL中
环境信息:
- Window10 64位
- pdi-ce-8.2.0.0-342
- SqlServer2017 Docker版本
- MySQL5.7.23 Docker版本
操作
软件准备
pdi-ce-8.2.0.0-342.zip版本下载
解压出该版本,运行Sqoon.bat即可

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

配置SqlServer源数据库
在“核心对象”-->“输入”-->“表输入”,将“表输入”图标直接拖拽到右侧区域

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


获取目标表

配置“字段选择”
过滤,转换字段信息


双击“字段选择”图标打开配置界面
“选择和修改窗口”:可以修改字段名称
“移除”:可以选择不需要传输数据的列,选择后将不会传输此字段里的值到目标表,我们这里选择的是TS字段,因为此字段是timestamp类型数据(时间戳)
“元数据”:在此可以对源数据表中的所有字段进行转换设置,比如类型,长度,精度,字符集等,如果想一次性将源表的所有字段均加载进来的话,点击右侧“获取改变的字段”。


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


-
新建我们需要导入的目标数据库连接,按照上面的步骤教程新建连接,
-
“浏览”选择需要导入数据的table
-
在此区域内选择查询数据时依据的字段,其实也就是根据此字段来判断两个表中的数据是否是同一笔记录
-
点击“获取和更新字段”可以在“更新字段”区加载所有字段,注意选择是否所有字段都需要更新数据,我在这里将carid的更新状态改成了Y。

校验连接情况

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

得到问题原因



测试执行任务

执行结果
源数据库

目标数据库

定时任务
新建作业

部署作业

设置执行频率

选择执行任务项


网友评论