sqoop只要安装到集群中的一台节点就可以了





1.上传sqoop到节点中





2.安装和配置

在添加sqoop到环境变量到/etc/profile中

将数据库连接驱动拷贝到$SQOOP_HOME/lib里

3.使用

第一类:数据库中的数据导入到HDFS上

sqoop import --connect jdbc:mysql://192.168.1.10:3306/dbTest --username root --password 123  --table trade_detail --columns 'id, account, income, expenses'

--username 数据库用户名

--password 密码

--table 要连接的数据表

--colunms 指定表中的列,要用引号

sqoop import --connect jdbc:mysql://192.168.1.10:3306/dbTest --username root --password 123  --table trade_detail --target-dir '/sqoop/td' --fields-terminated-by '\t'

--target-dir 指定输出路径

--fields-terminated-by 以指定的符号作为字段之间的分隔符

sqoop import --connect jdbc:mysql://192.168.1.10:3306/dbTest --username root --password 123  --table trade_detail --target-dir '/sqoop/td1' --fields-terminated-by '\t' -m 2

-m 2 指定启用几个map任务

sqoop import --connect jdbc:mysql://192.168.1.10:3306/dbTest --username root --password 123  --table trade_detail --where 'id>3' --target-dir '/sqoop/td2'

--where 增加where条件, 注意:条件必须用引号引起来

sqoop import --connect jdbc:mysql://192.168.1.10:3306/dbTest --username root --password 123 \

--query 'SELECT * FROM trade_detail where id > 2 AND $CONDITIONS' --split-by trade_detail.id --target-dir '/sqoop/td3'

--query 增加sql语句(使用 \ 将语句换行)

注意:如果使用--query这个命令的时候,需要注意的是where后面的参数,AND $CONDITIONS这个参数必须加上

而且存在单引号与双引号的区别,如果--query后面使用的是双引号,那么需要在$CONDITIONS前加上\即\$CONDITIONS

如果设置map数量为1个时即-m 1,不用加上--split-by ${tablename.column},否则需要加上



第二类:将HDFS上的数据导出到数据库中(不要忘记指定分隔符)

sqoop export --connect jdbc:mysql://192.168.8.120:3306/dbTest --username root --password 123 --export-dir '/td3' --table td_bak -m 1 --fields-terminated-by ','

sqoop操作与使用的更多相关文章

  1. Sqoop操作实践

    Sqoop操作实践 @(Hadoop) Sqoop常用参命令 序号 命令/command 类 说明 1 impor ImportTool 从关系型数据库中导入数据(来自表或者查询语句)到HDFS中 2 ...

  2. sqoop操作之HDFS导出到ORACLE

    注意:在导出前需要先创建待导出的表结构.如果导出的表在数据库中不存在则会报错:如果重复导出多次,表中的数据会重复: ; ; 导出表的所有字段 sqoop export --connect jdbc:o ...

  3. sqoop操作之Oracle导入到HDFS

    导入表的所有字段 sqoop import --connect jdbc:oracle:thin:@192.168.1.100:1521:ORCL \ --username SCOTT --passw ...

  4. sqoop操作之ETL小案例

    Extraction-Transformation-Loading的缩写,中文名称为数据提取.转换和加载.将数据从ORACLE中抽取数据,经过hive进行分析转换,最后存放到ORACLE中去. 本案例 ...

  5. sqoop操作之HIVE导出到ORACLE

    示例数据准备 hive中创建dept表 create table dept( deptno int, dname string, loc string ) row format delimited f ...

  6. sqoop操作之ORACLE导入到HIVE

    导入表的所有字段 sqoop import --connect jdbc:oracle:thin:@192.168.1.107:1521:ORCL \ --username SCOTT --passw ...

  7. 常用sqoop操作

    1. 关系型数据库到hive sqoop import --connect jdbc:mysql://localhost:3306/datahouse --username datahs --pass ...

  8. Sqoop操作集合

    1.在hive中建一个与mysql中一模一样的表 sqoop create-hive-table --connect jdbc:mysql://***.**.***.**:3306/数据库名称 --t ...

  9. sqoop 操作从hdfs 导入到mysql中语句

    将hdfs下/dw/dms/usr_trgt下的文件导入到mysql中test数据库下usr_trgt表中 sqoop-export   --connect jdbc:mysql://mysqlDB: ...

随机推荐

  1. 【bzoj4282】慎二的随机数列

    扯几句题外的,最近在看Fate/StayNight,对此人毫无好感…… 每次减一下当前可辨认数,然后随意dp一个LIS,最后记得加回去就好. #include<bits/stdc++.h> ...

  2. boost::bind的简单实现

    前言 在上一篇blog中简单的实现了boost::function,支持带有2个参数的函数/函数指针,函数对象,函数适配器/bind类,以及带有1个参数的成员函数指针. 本文接着来介绍如何实现一个简单 ...

  3. [ Python - 5 ] 通过random模块生成随机字符串

    import random checkcode = '' for i in range(4): if i == random.randint(0,3): current = chr(random.ra ...

  4. Idea设置全白色 背景

    IDEA设置全白色背景 标签(空格分隔): 工具使用 编辑框白色设置 菜单栏白色设置

  5. 【hdoj_1257】最小拦截系统

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1257 可以这样理解题意:给出一组数字,给它们划分组数,划分的依据是,每一组的元素必须是单调递减的顺序,只有 ...

  6. AC日记——Card Game codeforces 808f

    F - Card Game 思路: 题意: 有n张卡片,每张卡片三个值,pi,ci,li: 要求选出几张卡片使得pi之和大于等于给定值: 同时,任意两两ci之和不得为素数: 求选出的li的最小值,如果 ...

  7. 微信token

    <?php define("TOKEN", "lmaster"); function checkSignature() { //从GET参数中读取三个字段 ...

  8. (5)python 字符串和输入输出

    一.字符串转义 字符串可以包含任何字符可以用单引号也可以用双引号 a='hello' a="hello" 如果字符串中存在单引号,可以用双引号里包含单引号的方式 a="I ...

  9. HDU 1285 确定比赛名次【字典序最小的拓扑排序 + 优先队列】

    确定比赛名次 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submis ...

  10. 11、Flask实战第11天:蓝图

    蓝图的基本使用 之前我们写的代码都是集中在一个主程序文件里面.这样不利于分层解耦和维护.蓝图的作用就是让我们的flask项目更加模块化结构更加清晰,可以将相同模块的视图函数放在同一个蓝图下,同一个文件 ...