Kettle简单应用:实现数据迁移

Kettle实现数据迁移

下载地址:http://mirror.bit.edu.cn/pentaho/Data%20Integration/

(JDK1.8才可支持Kettle7.0以后的版本)

配置环境变量,启动程序

这里写图片描述

(变量值根据文件目录而定)

运行Spoon.bat启动程序

单表数据迁移

  1. 进入主界面,左上角点击文件-新建-转换保存为demo.ktr

  2. 左侧选择核心对象面板。”在输入文件夹下选择表输入并把它拖动到右侧编辑区。

这里写图片描述

  1. 双击编辑区的表输入图标,编辑数据输入来源。点击数据库连接右侧的新建按钮,按demo背景中的要求,配置数据库参数。配置后点击测试

这里写图片描述

如果报错找不到驱动包,复制oracle的驱动jar文件到ETL(Kettle)的lib目录下(我这里使用的是jdbc7.jar)

  1. 点击获取SQL查询语句”(等待时间较长),选择要迁移的表,点击确定

这里写图片描述

选择

这里写图片描述

  1. 重复以上步骤2,在输出文件夹下选择表输出并把它拖动到右侧编辑区。连线表输入表输出

这里写图片描述

  1. 双击编辑表输出,填入目标表名

这里写图片描述

要迁移的目标表不能已存在于目标数据库中,除非是表结构相同。

  1. 点击 执行SQL 语句列表,选择执行SQL (已有数据库无需此步骤)

这里写图片描述

  1. 点击 “运行转换”,直接选择启动

这里写图片描述

之后就能看到执行结果

这里写图片描述

这里仅是对数据进行迁移,主键、外键、关联信息不会迁移过去,需要后期去目标数据库配置。

  1. 当出现数据中文乱码的时候

这里写图片描述

尝试去掉允许简易转换,再进行预览

这里写图片描述

查看Oracle数据库的编码格式select userenv('language') from dual;

多表数据备份

当要对数据库多张表进行迁移操作的时候,Kettle提供自动生成流程图功能。

  1. 选择工具-向导-复制多表向导

  2. 选择输入的数据库与输出的数据库

这里写图片描述

  1. 选择要复制的表

  2. 选择Job File文件的存放路径,随意填写(因为可能会生成多个文件,建议放在文件夹内)

这里写图片描述

  1. 点击Finish,等待约20s即可生成相应的迁移流程图,执行即可完成迁移

这里写图片描述


相关资料推荐:

猜你喜欢

转载自blog.csdn.net/qq_30258957/article/details/81464167
今日推荐