sqoop的导出工具是把HDFS上文件中的数据导出到mysql中

mysql中的表

现在在linux上创建一个文件,并把这个文件上传到hdfs上

cat person.txt
,no7,
,no8, $ hadoop fs -mkdir person_export
$ hadoop fs -put -f person.txt person_export
$ hadoop fs -ls person_export
Found items
-rw-r--r-- supergroup -- : person_export/person.txt

 一、export-dir

使用export-dir来指定导出的目录,会导出该目录下的所有文件。

$ sqoop export --connect jdbc:mysql://localhost:3306/test --username root --password 123456 --table person -m 1 --export-dir person_export

最终的效果可以在mysql中的表体现:

二、插入中文乱码问题

hdfs上的内容:

3,第7个,
4,第8个, 

再次执行上面一样的export命令,在mysql中就会产生乱码:

可以使用下面的命令来解决乱码问题:

 sqoop export --connect "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8" --username root --password  --table person -m  --export-dir person_export

完成之后mysql的记录是:

三、update-key update-mode

需求hdfs文件中存在的记录做更新,不存在的记录则插入

 hdfs上的文件:

,第10个,
,第11个,
,第3个,
,第4个,

执行命令:

sqoop export --connect "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8" --username root --password  --table person -m  --export-dir person_export --update-key id --update-mode allowinsert

需要注意的是,update-mode有两种,一种是uodateonly,一种是allowinsert

执行完成之后,mysql中的数据:

四、input-fields-terminated-by

input-fields-terminated-by可以用来指定hdfs上文件的分隔符,默认是逗号

HDFS上的数据格式(以空格切分):

 aaa
bbb

执行下面的命令来导出:

 sqoop export --connect "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8" --username root --password  --table person -m  --export-dir person_export --input-fields-terminated-by ' '

导出的结果是:

五、columns

使用colums来指定导出到mysql的列

hdfs上的数据格式:

 aaa
bbb

执行下面的命令:

sqoop export --connect "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8" --username root --password  --table person -m  --export-dir person_export --input-fields-terminated-by ' ' --columns="id,name"

执行结果:

sqoop导出工具的更多相关文章

  1. HData——ETL 数据导入/导出工具

    HData是一个异构的ETL数据导入/导出工具,致力于使用一个工具解决不同数据源(JDBC.Hive.HDFS.HBase.MongoDB.FTP.Http.CSV.Excel.Kafka等)之间数据 ...

  2. 用Python编写博客导出工具

    用Python编写博客导出工具 罗朝辉 (http://kesalin.github.io/) CC 许可,转载请注明出处   写在前面的话 我在 github 上用 octopress 搭建了个人博 ...

  3. 基于jdk1.7实现的excel导出工具类

    通用excel导出工具类,基于泛型.反射.hashmap 以及基于泛型.反射.bean两种方式 import java.io.*;import java.lang.reflect.Field;impo ...

  4. oracle数据导出工具sqluldr2

    oracle数据导出工具sqluldr2可以将数据以csv.txt等格式导出,适用于大批量数据的导出,导出速度非常快.导出后可以使用oracle loader工具将数据导入.下载完sqluldr2,工 ...

  5. Mongodb数据导出工具mongoexport和导入工具mongoimport介绍

    一.导出工具mongoexport Mongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件.可以通过参数指定导出的数据项,也可以根据指定的条件导 ...

  6. ireport 导出工具类

    Ireport 报表导出 Poi + ireport 导出pdf, word ,excel ,html 格式 下面是报表导出工具类 Ireport 报表导出 Poi + ireport 导出pdf,  ...

  7. C#开发的高性能EXCEL导入、导出工具DataPie(支持MSSQL、ORACLE、ACCESS,附源码下载地址)[转]

    转自:http://www.cnblogs.com/yfl8910/archive/2012/05/19/2509194.html 作为财务数据核算人员,面对大量的业务与财务数据,借助于传统的EXCE ...

  8. Max批量导出工具

    Max批量导出工具 http://www.paulneale.com/scripts/batchItMax/batchItMax.htm Scripts Batch It Max: Batch It ...

  9. SequoiaDB版本升级及导入导出工具说明

    升级SequoiaDB数据库指导 SequoiaDB安装路径:SDB_HOME=/opt/sequoiadb 数据存储路径:DATABASE=/ opt/sequoiadb/database 一.导出 ...

随机推荐

  1. eclipse导入myeclipse的web项目

    1.import> 2.进入项目目录,找到.project文件,打开 3.找到<natures> ...</natures>代码段,添加如下标签内容并保存 <nat ...

  2. 立体匹配:关于Middlebury提供的源码的简化使用

    Middlebury提供的源码,虽然花了不到一个小时就运行起来啦.但说实话,它那循环读取脚本命令来执行算法真是让我费了不少头脑,花了近三天时间,我才弄明白了它的运行机制.你说,我就想提取一下算法,你给 ...

  3. esriSRGeoCSType Constants

    ArcGIS Developer Help  (Geometry)     esriSRGeoCSType Constants See Also esriSRGeoCS2Type Constants ...

  4. [SQL]SQL优化34条

    我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习.摘录.并汇总部分资料与大家分享! () 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到 ...

  5. Problem 2195 检查站点(普通树构造)(Vector)

    Time Limit: 1000 mSec    Memory Limit : 32768 KB Problem Description 在山上一共有N个站点需要检查,检查员从山顶出发去各个站点进行检 ...

  6. Node.js异常处理

    var log4js = require('log4js'); log4js.configure({ appenders: [ { type: 'console' }, { type: 'file', ...

  7. VML/SVG在Web开发中一些常见的框架

    1.借鉴自: http://www.codefans.net/soft/3061.shtml 来源于网上. flowchart.js  http://adrai.github.io/flowchart ...

  8. 一个构建XML对象的js库

    初学javascript,学习中用到在IE中建立XML对象,于是写了一个简单的“库”.因为水平所限,肯定会有不恰当的地方,欢迎指正. 如果大家有知道现存的更好的东西,非常希望大家能将它推荐给我. 代码 ...

  9. UITableViewCell之微博篇

    微博篇 本应用所涉及的知识点: 1.UITableView 中的cell 2.模型的创建 3.MJExtension第三方框架的使用 需求分析 1.界面分析 微博界面 界面控件分析: 整个页面 1.不 ...

  10. Codeforces Round #219 (Div. 1) C. Watching Fireworks is Fun

    C. Watching Fireworks is Fun time limit per test 4 seconds memory limit per test 256 megabytes input ...