数据迁移工具kettle简单上手
近期做了不少数据迁移工作,无一例外都是kettle做的,对于这些工具,我认为。够用就好,不用做特别多的研究(当然。除非你是这款工具的忠实粉丝,我相信这种没几个)。kettle也不例外。在我看来就是不同数据库间转移数据的工具,学一下大致的迁移的方法即可了,简单问题能解决即可。
基于这个目的,这里做一个简单的迁移步骤的入门。
对于不同数据间迁移,简单的操作一般就是表输入,字段匹配和表输出的步骤:
所以第一步就是建立表输入:文件-新建-转换,在以下选择表输入,拖到中间就可以。然后点进去对表输入进行操作:当然是选择相应的数据库,这里说明一下,最好在选项那一栏里加一个属性characterEncoding 值填UTF-8或者GBK(建议统一UTF-8,假设你是数据库都是统一的UTF-8的话)。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
然后获取sql查询语句,选择要迁移的数据表点击显示sql语句即可了。然后就会显示要转移的字段,你能够依据须要将这些字段做对应的处理,比如:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
首先说明一下,我这里DATEDIFF(s, '1970-01-01 00:00:00.000', RegisterTime) RegisterTime是sqlserver时间日期转换unix时间戳的函数。是官网给出的,可是可能会报错,可是依照道理不应该。详细原因不太清楚,假设怕报错能够写复杂一点:(convert(bigint, datediff(day, '1970-01-01 00:00:00' , AddTime)) * 24 * 60
* 60)
- (datediff(second, dateadd(day, datediff(day, 0,'1970-01-01 00:00:00'), 0), '1970-01-01 00:00:00'))
+ (datediff(second, dateadd(day, datediff(day, 0, AddTime), 0), AddTime)) AddTime。这样的就不会报错了。
接下来就是字段选择:转换-字段选择拖到中间。按住shift按箭头将表输入和字段选择连接起来。点击进去,点击获取改变字段,将相应的字段名称后面的改名成都写上相应要迁移的目的库中的字段名,Encoding选择UTF-8(楼主開始被骗了,表输入表述出和字段选择都选的GBK,也能够用,只是也有个别不能用的时候。所以还是UTF-8好用)。
嗯,接下来就是表述出了,相同道理,从表述出里面拖出来,按住shift拉个箭头跟字段选择。
接下来跟表输入几乎相同须要输入数据库的信息。
这里就不具体说反复的步骤了,记得选项里也填上编码UTF-8。
这些做好之后,目标表选择自己要迁移到的表。勾选指定数据库字段。以下的数据库字段点击获取字段,因为咱们前边字段选择时都改名了,这里他会自己主动给你匹配好字段。点击确定就算完毕了。
最后就是点击绿色的開始button,開始迁移数据吧。
当然,在以下会有迁移进度以及日志。假设报错了,依据日志的错误提示攻克了就能够:
OK。这样简单的数据迁移应该就没问题了。
数据迁移工具kettle简单上手的更多相关文章
- 数据交换工具Kettle
网上搜集了一些关于开源数据交换工具Kattle的文章,特收藏例如以下: 文章一:ETL和Kettle简单介绍 ETL即数据抽取(Extract).转换(Transform).装载(Load)的过程.它 ...
- 2018/1/8 学习汇总,kettle简单介绍,集合遍历方式的选择及原理,防止表单重复提交的后台解决方案
昨天因为当前这个二次开发项目的接近尾声,要求我们将生产环境数据库里的数据迁移到现在新的数据库来,但老数据库里是sqlserver而新数据库则是ORACLE,不仅仅面对着数据库数据类型结构不一致的问题, ...
- Sqoop数据迁移工具的使用
文章作者:foochane 原文链接:https://foochane.cn/article/2019063001.html Sqoop数据迁移工具的使用 sqoop简单介绍 sqoop数据到HDF ...
- 数据迁移工具sqoop
有问题........数据迁移工具sqoop sqoop安装 [root@sqoop data]# wget wget http://apache.fayea.com/sqoop/1.4.6/sqo ...
- Java基础_0311: 数据表与简单Java类映射
数据表与简单Java类映射 现在假设有如下的关系表,现在要求实现如下的数据关联操作: 一个部门有多个雇员: 一个雇员有一个或零个领导 代码实现 class Dept { private int dep ...
- Spring Boot项目简单上手+swagger配置+项目发布(可能是史上最详细的)
Spring Boot项目简单上手+swagger配置 1.项目实践 项目结构图 项目整体分为四部分:1.source code 2.sql-mapper 3.application.properti ...
- 撸了个 django 数据迁移工具 django-supertube
撸了个 django 数据迁移工具 django-supertube 支持字段映射和动态字段转化. 欢迎 star,issue https://github.com/FingerLiu/django- ...
- Tinker 热修复框架 简单上手教程
当你们看到Tinker的时候是不是有点愣逼这个是什么东西? 简单来说就是不需要重新下载app和重新安装app 来进行更新app的技术框架. 看看这个吧,我也是才学习 ,先做个学习记录 参考:Tinke ...
- 数据表与简单java类映射转换
简单的Java类的定义来源于数据表的结构, 例如:雇员信息表.部门信息表描述的就是雇员或部门的信息, 在实际的开发之中,数据表和简单java类之间的映射关系如下: 1. 数据实体表设计 = 类的定义: ...
随机推荐
- 如何防止js刷新页面后倒计时改变
1.存入cookie或localstorage(清除浏览器缓存后时间依然改变) 2.存入数据库
- Optional Chaining as an Alternative to Forced Unwrapping
?与!的区别 You specify optional chaining by placing a question mark (?) after the optional value on whic ...
- First-class citizen
In programming language design, a first-class citizen (also type, object, entity, or value) in a giv ...
- 联想E490 加M.2固态硬盘 卡在第一画面不动解决办法
电脑配置: E490 500G机械硬盘,自己加M.2 NVMe 固态硬盘. 问题:启动时出现 2101:Detection error on SSD1(M.2), 无法识别到机械硬盘 (重新插拨 ...
- H5发起微信支付
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Url 简单讲解
eg: http://sb.test.com/login?name=liming&password=twotigers 协议 http https ftp 域名 sb.test.com 则是域 ...
- Linux 文件系统挂载
文件系统挂载简介 磁盘分区和格式化完成后,磁盘分区要想能够使用,就需要挂载,在挂载某个分区前需要先建立一个挂载点 挂载:将新的文件系统关联至当前根文件系统 卸载:将某文件系统与当前根文件系统的关 ...
- collections模块-namedtuple
namedtuple -> 命名元组 这里的命名指的是对元组中元素的命名. 通过一个例子来看 import collections Person = collections.namedtuple ...
- 怎样在windows7上使用snmp命令
原文地址:http://wenboxz.com/archives/window7-use-snmp-command.html/
- 与Greenplum度过的三个星期
5月4日-5月24日.断断续续折腾了三个星期的Greenplum,总算告一段落了:扩容,发现扩不成容.仅仅好升级.升级,发现一堆错误,仅仅好暂停修复数据库:修好了,继续升级.升完级,发现错误.修啊修啊 ...