sqoop将数据的导入和导出
1. 在mysql中创建表
2. 导入hdfs中
# 将表student导入hdfs中
sqoop import
--connect jdbc:mysql://node1:3306/shixun?serverTimezone=UTC
--username root
--password Jsq123456...
--table student
--target-dir /student
--delete-target-dir
--num-mappers 1
--fields-terminated-by ","
3. 通过sql语句导入hdfs中
# 通过sql将数据导入hdfs中
sqoop
import --connect jdbc:mysql://node1:3306/shixun?serverTimezone=UTC
--username root
--password Jsq123456...
--query "select * from student where sname='zs' and \$CONDITIONS"
--target-dir /student
--delete-target-dir
--num-mappers 1
--fields-terminated-by ","
4. 导入hive中
sqoop
import --connect jdbc:mysql://node1:3306/shixun?serverTimezone=UTC
--username root
--password Jsq123456...
--table student
--num-mappers 1
--hive-import
--fields-terminated-by "\t"
--hive-overwrite
--hive-table test.student;
5. 将HDFS、Hive中的数据 导出到MySQL数据库中
注意:
1. double对应的时候,不对应double,对应varchar
2. hive中的路径必须存在,数据必须存在
sqoop
export --connect "jdbc:mysql://node1:3306/shixun?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8"
--username root
--password Jsq123456...
--table dept
--num-mappers 1
--export-dir "/user/hive/warehouse/test.db/dept"
--input-fields-terminated-by ","
6. 通过命令 导文件中的命令
sqoop --options-file 文件名.opt
本文来自博客园,作者:jsqup,转载请注明原文链接:https://www.cnblogs.com/jsqup/p/16551582.html