sqoop部署与使用

sqoop安装

1.下载并解压

scp sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz mini1:/root/apps/

tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C install

mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha sqoop

2.修改配置文件

cd sqoop/conf
mv sqoop-env-template.sh sqoop-env.sh
vim sqoop-env.sh

export HADOOP_COMMON_HOME=/root/apps/hadoop/
export HADOOP_MAPRED_HOME=/root/apps/hadoop/
export HIVE_HOME=/root/apps/install/hive/

3.将mysql的驱动包加入到sqoop的lib目录下

cp /root/apps/mysql-connector-java-5.1.9.jar sqoop/lib/

导入数据

从mysql导入到hdfs

#执行命令
sqoop import --connect jdbc:mysql://192.168.38.3:3306/test --driver com.mysql.jdbc.Driver --username root --password 123456 --table emp --m 1

--table   导出哪张表的数据
--m		使用几个mapreduce
--target-dir  指定导入到hdfs上的哪个目录下
--where "city ='sec-bad'"  按条件导入数据
--query 'select id,name,deg from emp WHERE  id>1207 and $CONDITIONS'  根据sql查询结果导入数据
--fields-terminated-by '\t' 指定字段间用什么连接,默认是逗号
--split-by id  多个maptask时根据什么字段切片

--incremental append  以增量模式导入 
--check-column id 增量模式导入会检查id
--last-value 1208 指明上次导入的数据中最后的id值,增量导入会根据这个值导入此id之后的

#不指定输出目录时,默认输出路径是/user/用户名/表名/part-m-00000

报错:

Streaming result set com.mysql.jdbc.RowDataDynamic@73b090be is still active. 

解决(2种方法):

1.在执行命令中加入--driver com.mysql.jdbc.Driver
2.换一个比较新的驱动jar包,但不要用6.x的,百度到的相关资料说6.x的驱动包在这里也会报错,自己没有实验过。

从mysql导入到hive

sqoop import --connect jdbc:mysql://192.168.38.3:3306/test --driver com.mysql.jdbc.Driver --username root --password 123456 --table emp --hive-import --m 1

导出数据

导出数据到mysql,要求mysql中事先有那张表。

从hdfs导出数据到mysql

从hive导出数据只要将hdfs的目录改成hive仓库的目录即可

sqoop export \
--connect jdbc:mysql://192.168.38.3:3306/test \
--driver com.mysql.jdbc.Driver \
--username root \
--password 123456 \
--table employee \
--export-dir /user/root/emp/

#参数说明
--export-dir   将哪个目录下的数据导出
--table	将数据导出到mysql的那张表
--fields-terminated-by '\001' hive仓库里的数据默认分隔符是'\001' 到处是需要指定  默认以逗号分割
posted @   py小杰  阅读(363)  评论(0编辑  收藏  举报
编辑推荐:
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
阅读排行:
· C# 13 中的新增功能实操
· Ollama本地部署大模型总结
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(4)
· langchain0.3教程:从0到1打造一个智能聊天机器人
· 用一种新的分类方法梳理设计模式的脉络
点击右上角即可分享
微信分享提示