Press "Enter" to skip to content

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

Kettle实现数据迁移

 

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

 

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

 

配置环境变量,启动程序

 

 

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

 

运行Spoon.bat启动程序

 

单表数据迁移

 

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

 

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

 

 

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

 

 

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

 

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

 

 

选择否

 

 

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

 

 

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

 

 

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

 

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

 

 

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

 

 

之后就能看到执行结果

 

 

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

 

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

 

 

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

 

 

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

 

多表数据备份

 

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

 

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

 

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

 

 

选择要复制的表

 

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

 

 

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

 

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注