Sqoop工具使用

Sqoop工具使用

最近在整理大学时候的实验笔记或者是知识点笔记,希望能分享给大家,有问题希望指出来哦!快乐学习哦!

实验环境
Cent os 6.6
Sqoop 1.4.4
Mysql 5.1.x

1.1 解压sqoop
sudo tar -zxvf ~/downloads/sqoop-1.4.4.bin__hadoop-2.0.4-alpha.tar.gz -C /usr/local

在这里插入图片描述
如果机器上指定了resourcemanager和nodemanager(即hadoop配置文件已经配好)则不需要配置sqoop,直接运行即可

将解压后的sqoop进行改名
cd /usr/local
mv sqoop-1.4.4.bin__hadoop-2.0.4-alpha sqoop-1.4.4

在这里插入图片描述
1.1.2 将mysql的连接jar包导入sqoop的lib中
1.启动mysql并查看版本(如果没有下载mysql请先完成“hive学习指南”安装好mysql)
sudo service mysqld start
mysql -V
在这里插入图片描述
将mysql-connector-java-5.1.7-bin.jar导入至sqoop-1.4.4的lib之中

cp ~/downloads/mysql-connector-java-5.1.7-bin.jar /usr/local/sqoop-1.4.4/lib

在这里插入图片描述

1.1.3 启动hadoop
实现mysql与hdfs的数据互导,需要启动hadoop,由于sqoop执行依赖yarn,因此还需要启动yarn。执行如下命令
cd /usr/local/hadoop
./sbin/start-all.sh #启动hadoop(hdfs yarn )
在这里插入图片描述
启动完成之后,jps查看,如果出现了namenode、datanode、secondarynamenode、nodemanager、resourcemanager则表明启动成功,如果少了其中的一项,则需要具体查看log日志,进行问题排查
在这里插入图片描述
1.1.4 HDFS向sqoop之中导入数据
在~/dowmloads/ 目录下有一个sqoop0text.txt文件,我们对其进行查看

sudo cat ~/downloads/sqoop0test.txt

在这里插入图片描述

将该文件上传至hdfs之中的根目录下

hadoop fs -put ~/downloads/sqoop0text.txt /

在这里插入图片描述
进入mysql
mysql -h 127.0.0.1 -u root -p
创建database
mysql> create database HtoM;

在这里插入图片描述

进入创建的database之中

mysql> use HtoM;

创建表htom(用来接收hdfs数据,字段数与类型需要与导入文件一致)

mysql> create table htom (num INT , id1 VARCHAR(20), id2 VARCHAR(20));
在这里插入图片描述

将hdfs数据导入mysql

打开另外一个终端,执行下面命令
cd /usr/local/sqoop-1.4.4/bin

./sqoop export --connect jdbc:mysql://192.168.0.23:3306/HtoM --username root --password 123456 --export-dir /sqoop0test
注意,在上面命令中,请把192.168.0.23换成自己机器的ip
在前一个运行的mysql终端之中可以查看到导入的数据
mysql>select * from htom;
在这里插入图片描述

1.1.5 sqoop向HDFS之中导入数据
在hdfs之中新建一个名为 MtoH的文件夹
hadoop fs -mkdir /MtoH
在这里插入图片描述

执行命令
cd /usr/local/sqoop-1.4.4/bin

./sqoop import --connect jdbc:mysql://192.168.0.23:3306/HtoM --username root --password 123456 --table htom --target-dir ‘/MtoH/mtoh’ --columns ‘num, id1 ,id2’ -m 1
在这里插入图片描述
注意,在上面命令中,请把192.168.0.23换成自己机器的ip

进入hdfs之中查看是否将数据导入成功了

hadoop fs -ls /MtoH/mtoh

hadoop fs -cat /MtoH/mtoh/part-m-00000

猜你喜欢

转载自blog.csdn.net/qq_42581563/article/details/106115955