使用Kettle7.1实现从Oracle库迁移到Mysql

本文详细介绍Kettle数据迁移工具的安装步骤与使用方法,包括如何准备数据库驱动包、配置数据源、解决乱码问题以及迁移过程中的常见故障排除。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


** 废话不多说,直接开搞 **

安装

1、下载安装包

我使用的是7.1版本,所以只提供7.1版本的国内镜像下载地址https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.1/

2、解压安装包

进入Kettle的安装目录直接双击spoon.bat文件,出现如下界面及说明kettle成功部署。
在这里插入图片描述

开始使用

1、准备工作

在开始使用之前我们首先要准备两个Jar包,也就是我们需要用到的数据库驱动包:mysql-connector-java-5.1.46.jar、ojdbc14-10.2.0.3.0.jar。

附赠Jar下载链接:https://pan.baidu.com/s/1bHQuCEkScB_T5tYkI_bRUg
提取码:epts

拿到jar包之后,我们要把jar包放进lib目录下。
在这里插入图片描述在这里插入图片描述

2、这次真的要开始使用啦!

1、双击Spoon.bat文件启动程序。等待程序启动。。。

2、程序启动后点击新建作业
在这里插入图片描述
3、构建导入、导出数据源
(1)点击主对象树
点击主对象树
(2)、新建数据源
新建数据源
(3)、填写数据源以及作业信息
在这里插入图片描述

填写完信息之后先要点击测试,测试能否正常连接数据库。
点击测试后出现下面场景则为成功:
在这里插入图片描述
创建Mysql数据源流程基本一致,但是。。。

注意!坑点来了:
oracle数据库本身的编码要和mysql的保持一致,同时我们需要在配置mysql连接的“选项”里面配置对应的编码,否则mysql里面导过去的表可能会出现乱码,且某些表可能会迁移失败造成job异常终止:
在这里插入图片描述
defaultFetchSize 500
useCursorFetch true
characterEncoding utf8

4、开始迁移

选择工具 — 向导 — 复制多表向导

这里要分别选择导入导出的数据源,选择完成点击next
在这里插入图片描述
然后选择需要迁移的表
在这里插入图片描述
选择完成后点击finish,输入名字和存储位置:

在这里插入图片描述

选择完成后点击finish,等待Kettle生成迁移流程。。。

loading。。
loading。。
loading。。

一段时间以后终于生成完毕了,这个时候我们看到的画面是这样的:在这里插入图片描述
这时候点击左上角的三角,点击开始:

在这里插入图片描述
选择开始节点:
在这里插入图片描述
点击执行,默默等待就搞定了。。。

工作窗口下方就是日志窗口,在这里可以看到运行的流程:
在这里插入图片描述

我碰上的情况:

其他表都成功了,只有其中某张表失败了(报错截图先不贴了,大概意思就是Mysql链接失败什么的)
这时候双击失败的节点,会弹出一个窗口,是它要使用的创建表的sql:
在这里插入图片描述
可以拿着这个sql单独去数据库中执行一下即可,然后选择下一个复制数据的节点,点击指定节点执行按钮:
在这里插入图片描述
核实弹出窗口中的start job at 下拉框中选中的是否是你选择的节点,如果是,执行就好啦。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值