sqoop安装和使用

下载版本:sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 

官网:http://mirror.bit.edu.cn/apache/sqoop/1.4.6/

jdbc驱动:mysql-connector-java-5.1.46.jar

jdbc驱动包放到sqooplib目录下。

cd sqoop-1.4.7.bin__hadoop-2.6.0/bin/ 进行ls

执行  ./sqoop-help或者./sqoop help

看到有红色框里的东西代表安装成功了。

从HDFS导出数据到mysql:

首先在mysql创建与HDFS数据的字段相对应的表

 ./sqoop export 
--connect jdbc:mysql://master:3306/hive_sqoop
--username root
--password 123456
--table t_extract_web_log
--export-dir /t_extract_web_log/000000_0
--input-fields-terminated-by '01'

  //hive_data数据库名   换行

备注:数据虽然在hive里面是 分隔符,但是经过hive导出到HDFS:

 

hive> from t_extract_web_log

 

    > insert overwrite directory '/t_web_log'

 

    > select *;

分隔符变成了 01

从mysql导入数据到HDFS:

./sqoop import
--connect jdbc:mysql://master:3306/hive_sqoop
--username root
--password 123456
--table t_extract_web_log
--target-dir /t_extract_web_log
--m 1

备注:注意:/t_extract_web_log必须不存在,否则报错

--m 1 表示只有一个mapTask,默认4个

每次执行的时候会检测文件是否存在

原文地址:https://www.cnblogs.com/dummyly/p/10057230.html