1. 初识Kettle与数据库迁移场景
在数据密集型业务场景中,数据库迁移是每个数据工程师都会遇到的常规需求。最近接手了一个将Oracle数据迁移到MySQL的任务,经过多轮工具选型,最终选择了开源的Kettle(现称为Pentaho Data Integration)作为ETL工具。这里记录下Windows环境下从零开始使用Kettle完成Oracle到MySQL数据迁移的全过程。
为什么选择Kettle?相比其他ETL工具,它有三大不可替代的优势:
- 完全开源且社区活跃,遇到问题容易找到解决方案
- 可视化操作界面降低了学习曲线
- 内置丰富的转换步骤和输出组件,支持几乎所有主流数据库
注意:Kettle对JDK版本有严格要求,建议使用JDK8或JDK11,避免使用最新版JDK可能出现的兼容性问题
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与工具安装
2.1 基础软件安装清单
在开始之前,需要准备以下软件环境:
- Java环境:下载JDK8(如jdk-8u381-windows-x64.exe)并配置JAVA_HOME环境变量
- Kettle本体:从SourceForge下载最新的pdi-ce-9.4.0.0-343.zip社区版
- 数据库驱动:
- Oracle的ojdbc8.jar(建议版本12.2.0.1)
- MySQL的mysql-connector-java-8.0.33.jar
2.2 关键配置步骤详解
安装完基础软件后,需要将数据库驱动放入正确位置:
bash复制# Kettle的驱动存放路径
data-integration/lib/
验证安装是否成功:
- 双击Spoon.bat启动图形界面
- 查看底部日志面板是否有"Pentaho Data Integration 9.4.0.0"启动信息
- 检查"帮助->关于"中的Java版本是否为1.8.x
常见问题:如果启动时报错"Unable to locate a Java Runtime",需要检查环境变量JAVA_HOME是否指向JDK安装目录而非JRE
3. 数据库连接配置实战
3.1 创建Oracle连接
在Kettle中配置数据库连接需要特别注意参数细节:
- 点击"
