1. 首先安装好mysql,下载kettle
  2. 将下载好的压缩包解压到非中文路径的文件夹中
  3. 在data-integration中找到并打开Spoon.bat,打开图形操作界面
  4. kettle sql server 驱动jar 包 kettle依赖配置_数据库


  5. kettle sql server 驱动jar 包 kettle依赖配置_kettle_02

  6. 这时候可以做mysql的准备了,这里以尚硅谷视频里的一个简单示例为例,连接mysql数据库后,创建一个数据库和两个数据表stu1stu2,然后向其中插入部分数据,stu2中没有’age’字段
CREATE DATABASE kettle_train

SHOW DATABASES

USE kettle_train;

SHOW TABLES

CREATE TABLE stu1(id INT,NAME VARCHAR(15),age INT);
CREATE TABLE stu2(id INT,NAME VARCHAR(15));

INSERT INTO stu1 VALUES(1001,'wang',22),(1002,'ze',21),(1003,'yu',19);
SELECT * FROM stu1

INSERT INTO stu2 VALUES(1001,'xiao');
SELECT * FROM stu2

kettle sql server 驱动jar 包 kettle依赖配置_字段_03

  1. 下载好mysql8.0的驱动jar包,放到kettle安装文件中的lib下,重启spoon
    mysql8.0jar包下载地址
  2. 如果打不开spoon就把Spoon.bat中的if “%PENTAHO_DI_JAVA_OPTIONS%”"" set PENTAHO_DI_JAVA_OPTIONS="-Xms1024m" “-Xmx2048m” “-XX:MaxPermSize=256m”
    改为
    if “%PENTAHO_DI_JAVA_OPTIONS%”"" set PENTAHO_DI_JAVA_OPTIONS="-Xms512m" “-Xmx512m” “-XX:MaxPermSize=256m”
    如果打开无响应那就建议你换一下jdk版本了,建议下载JDK1.8
  3. 我们将在kettle中实现stu1的数据到stu2,新建一个转换,在输入中找到表输入,拖到右边点开
  4. 新建一个链接,输入你的数据库信息,测试一下链接

测试链接错误请参考

9. SQL语句中查询stu1的所有记录作为数据流的输出,我们可以先测试一下是不是把自己刚刚插入的数据查出来了

kettle sql server 驱动jar 包 kettle依赖配置_字段_04

  1. 现在‘表输入’就把stu1中查询的数据作为输出流输出了,我们要想它将数据输出到stu2中,我们需要在输出中选择插入/更新,然后将它们链接起来(按住shift不放拖过去)
  2. 点击输入输出的获取字段,如果出现stu1中的字段的话,说明表输入的流正常,然后再选择插入更新的目标是stu2表

kettle sql server 驱动jar 包 kettle依赖配置_mysql_05


11. 然后我们选择当stu2的id = stu1(也是表输入的输出流)的id时插入

kettle sql server 驱动jar 包 kettle依赖配置_数据库_06


12. 保存下当前转换

kettle sql server 驱动jar 包 kettle依赖配置_字段_07


13. 运行这个转换

kettle sql server 驱动jar 包 kettle依赖配置_字段_08


14. 选择启动

kettle sql server 驱动jar 包 kettle依赖配置_字段_09


15. 再去表中看就发现stu2中多了两个stu1中的字段了

SELECT * FROM stu2

kettle sql server 驱动jar 包 kettle依赖配置_JAVA_10