近期做了不少数据迁移工作,无一例外都是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简单上手的更多相关文章

  1. 数据交换工具Kettle

    网上搜集了一些关于开源数据交换工具Kattle的文章,特收藏例如以下: 文章一:ETL和Kettle简单介绍 ETL即数据抽取(Extract).转换(Transform).装载(Load)的过程.它 ...

  2. 2018/1/8 学习汇总,kettle简单介绍,集合遍历方式的选择及原理,防止表单重复提交的后台解决方案

    昨天因为当前这个二次开发项目的接近尾声,要求我们将生产环境数据库里的数据迁移到现在新的数据库来,但老数据库里是sqlserver而新数据库则是ORACLE,不仅仅面对着数据库数据类型结构不一致的问题, ...

  3. Sqoop数据迁移工具的使用

    文章作者:foochane  原文链接:https://foochane.cn/article/2019063001.html Sqoop数据迁移工具的使用 sqoop简单介绍 sqoop数据到HDF ...

  4. 数据迁移工具sqoop

    有问题........数据迁移工具sqoop sqoop安装 [root@sqoop data]# wget  wget http://apache.fayea.com/sqoop/1.4.6/sqo ...

  5. Java基础_0311: 数据表与简单Java类映射

    数据表与简单Java类映射 现在假设有如下的关系表,现在要求实现如下的数据关联操作: 一个部门有多个雇员: 一个雇员有一个或零个领导 代码实现 class Dept { private int dep ...

  6. Spring Boot项目简单上手+swagger配置+项目发布(可能是史上最详细的)

    Spring Boot项目简单上手+swagger配置 1.项目实践 项目结构图 项目整体分为四部分:1.source code 2.sql-mapper 3.application.properti ...

  7. 撸了个 django 数据迁移工具 django-supertube

    撸了个 django 数据迁移工具 django-supertube 支持字段映射和动态字段转化. 欢迎 star,issue https://github.com/FingerLiu/django- ...

  8. Tinker 热修复框架 简单上手教程

    当你们看到Tinker的时候是不是有点愣逼这个是什么东西? 简单来说就是不需要重新下载app和重新安装app 来进行更新app的技术框架. 看看这个吧,我也是才学习 ,先做个学习记录 参考:Tinke ...

  9. 数据表与简单java类映射转换

    简单的Java类的定义来源于数据表的结构, 例如:雇员信息表.部门信息表描述的就是雇员或部门的信息, 在实际的开发之中,数据表和简单java类之间的映射关系如下: 1. 数据实体表设计 = 类的定义: ...

随机推荐

  1. 定时清理clientmqueue目录垃圾文件防止占满磁盘空间

    RedHat/CentOS 5.8 默认就有sendmail,而6.4默认没有.   手动清理方法: find /var/spool/clientmqueue/ -type f|xargs rm -f ...

  2. freemarker加载模板文件的

    java代码: public String getContent(String name, HashMap<String, Object> paramMap) { //home 文件路径 ...

  3. 叁、js中的css

    一.子选择器:用来选择一个父元素直接的子元素,不包括子元素的子元素,它的符号为“>” 注:ie6不支持子代选择器. <!DOCTYPE html PUBLIC "-//W3C// ...

  4. Linux学习02--Linux一切皆文件

    Linux学习第二部 Linux一切皆对象 啊啊啊啊啊,今天被学妹说太直了,嘤嘤嘤. 学习linux两三天了,前期感觉并不难,只是命令多,多记记多敲一敲就能都记住了.希望自己能够坚持下去吧! 下面是根 ...

  5. python学习笔记:第八天

    文件操作: 1.文件基本操作方法: 1.打开文件2.文件操作3.文件关闭三种基本的操作模式 r(只可读) w(只可写) a(追加) 2.读文件: # f = open('静夜思','r',encodi ...

  6. 紫书 例题8-5 UVa11054(等价转换)

    这道题用到了等价转换的思想 所有要运到a1的酒, 都要经过a2, 所以不如把a2的值改成a1+a2,然后依次以此类推. #include<cstdio> #include<cmath ...

  7. windows环境利用apache 配置虚拟主机

    windows环境利用apache 配置虚拟主机 1.改动http.host #LoadModule vhost_alias_module modules/mod_vhost_alias.so #In ...

  8. MFC,C++,VC++,VS2010 之间究竟是什么关系

    C++是在C语言的基础上发展而来的面向对象的一种语言: MFC是基于C++类的窗口开发工具,内含大量的基类.降低编程人员的工作量: VC++是一种开发工具. VS2010是更高版本号的开发工具,功能强 ...

  9. jquery开发之代码风格

    1,链式操作风格. (1) 对于同一个对象不超过三个操作的.可直接写成一行.代码例如以下: $("li").show().unbind("click"); (2 ...

  10. java学习记录笔记--继承,super,Object类

    继承: Java中的继承是单继承的. 1.子类拥有父类的全部属性和方法. 可是属性和方法的修饰符不能使private. 2.能够复用父类的代码. 方法的重写须要满足的条件: a.返回值类型 b.方法名 ...