背景
用kettle实现了一张表的数据迁移。但实际情况中,数据库会有几百,几千张表,而kettle的表输入和表输出只能选择一张表,我们不可能一个个地填写表名。这时候,我们要考虑通过循环实现多表的数据迁移。
前期准备
下载Kettle,创建需要迁移的目标表(与源表名称一样)
kettle配置流程
![kettle教程,MySQL数据库多表批量迁移,配置详细截图(已验证)](http://p2.ttnews.xyz/loading.gif)
运行主流程-job
![kettle教程,MySQL数据库多表批量迁移,配置详细截图(已验证)](http://p2.ttnews.xyz/loading.gif)
设置表变量-ktr
子流程-job
获取表名称-ktr
插入数据-ktr
流程详细配置讲解
- 设置表名称(01_set_table_name.ktr)
这里可以有2中方式,可以直接从数据库中查询,也可以通过Excel输入,推荐采用Excel输入的方式。
mysql查询表名称SQL语句:select table_name from information_schema.tables where table_schema='数据库名称' and table_type='base table'
表输入
Excel表输入
Excel表数据预览
- 获取表名称(02_get_table_name.ktr)
- 数据插入(03_insert_to_table.ktr)
- 主流程配置修改
-----------------------------------------------------------------------------------------------
流程讲解完毕!
感谢
大家
阅读
!
閱讀更多 憧憬8星星 的文章