【ETL】使用kettle工具将数据从oracle迁移到mysql

1 kettle安装及运行  
kettle官网下载地址 ,下载完毕后大概有800多m 

下载完毕后,直接解压,双击Spoon.bat进行运行。 
 
如果在你的电脑上启动之后,没有进入下面的页面,那么就换台机器。修改  Spoon.bat 中java内存参数不一定好使。

if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xms1024m" "-Xmx2048m" "-XX:MaxPermSize=256m"1

 
2 数据库连接  
将数据从oracle迁移到mysql,需要先在kettle中建立oracle和mysql数据库连接,注意 mysql-connector-java-5.1.45.jarojdbc14-10.2.0.1.0.jar 要在kettle启动之前拷贝进去。 
2.1 mysql  
mysql-connector-java-5.1.45.jar 拷贝到 data-integration\lib 目录下 
 
按照下图操作,输入相关的数据连接参数 

配置字符集 

2.2 oracle  
ojdbc14-10.2.0.1.0.jar 拷贝到 data-integration\lib 目录下 

按照下图操作,输入相关的数据连接参数 

3 最基本的导数据  
导入数据的基本流程如下图,可以分为三个步骤,首先建立源数据库和目标数据库的连接,然后建立源数据表和目标数据表的映射关系,最后建立作业任务,执行。 

3.1 建立DB连接  
这个在上面第2章已经将做如何配置了。 
3.2 建立steps  
这一步实现源数据库和目标数据表的映射关系,它也有三个步骤 
3.2.1表输入  
第一步:在【转换】里面,选择【核心对象】,接着双击【表输入】,或者选中将【表输入】拖拽到右侧空白区域。 

第二步:双击你拖进来的【表输入】,修改“步骤名称”,选择源数据,点击获取【获取SQL查询语句】,选择你想同步的表,点击确定后,就可以了。当然你也可以自己写sql语句 

3.2.2 字段选择  
第一步:在【转换】里面,拖拽【字段选择】到右侧空白区域。 
第二步:按住shift 拖动鼠标连接【客户基本信息输入】和 【字段选择】 
第三步:双击【字段选择】,添加【列映射】,建立源表和目标表中列字段的映射,如果字段名称相同,kettle会自动帮你选择,如果不同,则需要你自己选择对应关系 

下图是匹配完成,点击确定后的结果。 
 
第四步:这一步可选,当源数据字符集与目标字符集不同的时候需要做字符转换,如果一致,则直接跳过这一步 

3.2.3 表输出  
第一步:在【转换】拖拽【表输出】到右侧空白区域,按住shift 拖动鼠标连接【字段选择】和【基本信息输出】 
 
第二步:双击【表输出】,修改“步骤名称”,选择“数据库连接”,选择“目标表”, 
 
第三步:获取字段,因为在【字段选择】中已经做了匹配,所以这里可以全选,kettle可以帮你全部选择 
 
第四步: ctrl+s 保存 ktr文件 
4 建立作业  
按照下图新建作业 
 
4.1 设置START  
拖拽【START】到右侧空白区域 

4.2 配置作业转换  
第一步:拖拽【转换】到右侧空白区域,并按住shift 拖动鼠标连线 

第二步:选择第3章保存的ktr文件,保存即可。 
 
第三步:手工运行作业,点击下图红色圈圈里面的按钮 

进入下面的页面,点击【执行】就可以了。 
 
查看日志,下面的是结果正常的。如果有错,kettle会提示你错误原因。 

4.3 定时执行  
如果不想立即执行,那么可以选择制定的规则,让kettle定期执行。具体操作,可双击【START】,更改“类型”,下图示例是制定每天的具体时刻。 
 
运行的时候,选择Start Job at 就可以了。 
 
你会发现画风会停到下面这里 
 
跟踪日志,你会发现它会按照我设置的时间开始执行 

参考资料  
KETTLE 从oracle将表导入mysql  
Kettle数据抽取(转换)出现乱码问题解决方法



About Me

........................................................................................................................

● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除

● 本文在itpub( http://blog.itpub.net/26736162 )、博客园( http://www.cnblogs.com/lhrbest )和个人weixin公众号( xiaomaimiaolhr )上有同步更新

● 本文itpub地址: http://blog.itpub.net/26736162

● 本文博客园地址: http://www.cnblogs.com/lhrbest

● 本文pdf版、个人简介及小麦苗云盘地址: http://blog.itpub.net/26736162/viewspace-1624453/

● 数据库笔试面试题库及解答: http://blog.itpub.net/26736162/viewspace-2134706/

● DBA宝典今日头条号地址: http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826

........................................................................................................................

● QQ群号: 230161599 (满) 、618766405

● weixin群:可加我weixin,我拉大家进群,非诚勿扰

● 联系我请加QQ好友 ( 646634621 ) ,注明添加缘由

● 于 2018-12-01 06:00 ~ 2018-12-31 24:00 在魔都完成

● 最新修改时间:2018-12-01 06:00 ~ 2018-12-31 24:00

● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

........................................................................................................................

● 小麦苗的微店 : https://weidian.com/s/793741433?wfr=c&ifr=shopdetail

● 小麦苗出版的数据库类丛书 : http://blog.itpub.net/26736162/viewspace-2142121/

● 小麦苗OCP、OCM、高可用网络班 : http://blog.itpub.net/26736162/viewspace-2148098/

● 小麦苗腾讯课堂主页 : https://lhr.ke.qq.com/

........................................................................................................................

使用 weixin客户端 扫描下面的二维码来关注小麦苗的weixin公众号( xiaomaimiaolhr )及QQ群(DBA宝典)、添加小麦苗weixin, 学习最实用的数据库技术。

........................................................................................................................

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2286840/,如需转载,请注明出处,否则将追究法律责任。

【ETL】使用kettle工具将数据从oracle迁移到mysql相关推荐

  1. Oracle 迁移至 MySQL、PG等分布式数据库,可能遇到的12个典型问题

    近年来,分布式数据库逐渐占据了OLTP领域较大的市场,尤其在互联网领域,MySQL.PG等分布式数据库的应用非常广泛.随着软件国产化.自主可控战略的提出,非互联网企业也开始考虑数据库转型,很多企业原本 ...

  2. Oracle 迁移至Mysql

    **吴海存,**10g / 11g / 12c OCM,Oracle Exadata / Golden Gate专家,曾于Amazon和Oracle公司担任全球业务资深DBA,目前供职于中国农业银行, ...

  3. Oracle迁移到MySQL性能下降的注意点

    背景:最近有较多的客户系统由原来由Oracle改造到MySQL后出现了性能问题CPU 100%,或是后台的CRM系统复杂SQL在业务高峰的时候出现堆积导致业务故障.在我的记忆里面淘宝最初从Oracle ...

  4. ETL数据清洗Kettle工具

    文章目录 一.简介 二.资源库(新建.管理) 三.转换 1. 新建数据源 2. 简单的输入输出 配置步骤 2.1 配置表输入 2.2 配置表输出 2.3 保存 2.4 启动与执行结果 3. 转换 1. ...

  5. oracle迁移到mysql工具_oracle数据库想迁移到mysql上 有什么方法或者工具吗

    Manager进程:需要源端跟目标端同时运行,主要作用是监控管理其它进程,报告错误,分配及清理数据存储空间,发布阈值报告等 Extract进程:运行在数据库源端,主要用于捕获数据的变化,负责全量.增量 ...

  6. 达梦数据库迁移oracle数据乱码,oracle迁移到达梦数据库之存储过程中char类型的不同处理...

    oracle迁移到dm之存储过程中char类型的不同处理 1.问题描述: oracle迁移到dm后,oracle正常使用的存储过程,在dm中使用报错:字符串截断 2.查找原因: 2.1 对比oracl ...

  7. 使用navicat premium将数据库从Oracle迁移到SQL Server,或从Oracle迁移到MySQL

    有时候我们有迁移数据库的需求,例如从Oracle迁移到SQL Server,或者从MySQL迁移到Oracle. 很多江湖好汉一时不知如何手工操作,所幸的是Navicat提供了迁移的自动化操作界面. ...

  8. 利用NavicatPremium把Oracle迁移到MySQL

    概述 由于工作的需要,需要将原先用的Oracle表数据迁移到MySQL,步骤其实很简单,这里用的是Navicat Premium12 操作步骤 打开Navicat Premium12 分别创建orac ...

  9. oracle 如何迁移到 mysql_怎么将数据库从Oracle迁移到SQL Server,或从Oracle迁移到MySQL...

    有时候我们有迁移数据库的需求,例如从Oracle迁移到SQL Server,或者从MySQL迁移到Oracle. 很多江湖好汉一时不知如何手工操作,所幸的是Navicat提供了迁移的自动化操作界面. ...

最新文章

  1. 《多处理器编程的艺术》读书笔记(2)--- 互斥
  2. 会计师要计算机学的,会计师要具备哪些能力条件
  3. 关于全局ID,雪花(snowflake)算法的说明
  4. 6.824 MapReduce lab1 2020(一)
  5. ssh不能进入save方法_快速理清为什么你的redis未授权不能getshell
  6. tensorflow没有这个参数_解决TensorFlow中Batch Normalization参数没有保存的问题
  7. python 获取点击按钮名称_python如何获取tkinter组件的名称?比如按下多个Button中的一个,返回这个被按下的Button的text?...
  8. 面经 |算法工程师面试题汇总分享
  9. 《python基础教程(第二版)》学习笔记 基础部分(第1章)
  10. linux下ftp服务站点,Linux下vsftp服务建立多站点的方法
  11. 欢迎进入测试day01作业
  12. 手机如何远程控制挂机宝? 影云挂机宝
  13. 云堡垒机相关概念汇总说明
  14. 1131:Octal Fractions
  15. vue ie报错:SCRIPT5022: [vuex] vuex requires a Promise polyfill in this browser.
  16. python从键盘输入列表有缺陷_程序员必知的Python陷阱与缺陷列表-阿里云开发者社区...
  17. 重型卡车、拖车和客车未来发展之路
  18. Linux~~~网络管理实战1-2020.12.6
  19. 【demo】Excel批量设置超链接(java代码实现)
  20. CAN总线常见问题解答

热门文章

  1. html中css常用知识点
  2. 大部分客户的采购习惯及采购周期,做外贸的你一定要知道!
  3. filtic函数 matlab_Matlab信号处理工具箱函数
  4. TP4582B/TP4584B蓝牙充电座锂电池充放电芯片
  5. Android13以下都有,设计系统程序时,要避免哪些漏洞?
  6. “中国翼创”开赛 文军营销洞察之眼品牌营销saas平台抢眼
  7. clover windows安装_Mac太贵?小北教你如何安装黑苹果
  8. SpringBoot整合redis(StringRedisTemplate),操作一个redis服务器的多个库
  9. Python爬取LOL高清皮肤壁纸
  10. PS/2键盘显示感叹号 报(代码10)错误