1:下载Sqoop:
下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/1.4.7/
2:上传Sqoop文件
到服务器的:/home目录下,然后进行解压:
3:解压命令:
tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /opt/
4:配置SQOOP_HOME
到环境变量中
vi /etc/profile
增加两行:
export SQOOP_HOME=/opt/sqoop-1.4.7.bin__hadoop-2.6.0
export PATH=$PATH:$SQOOP_HOME/bin
执行:
source /etc/profile
5: 配置:sqoop-env.sh 文件
进入 /opt/sqoop-1.4.7.bin__hadoop-2.6.0/conf 目录下,执行:
cd /opt/sqoop-1.4.7.bin__hadoop-2.6.0/conf
将sqoop-env-template.sh复制一份,并取名为sqoop-env.sh,也就是执行命令:
cp sqoop-env-template.sh sqoop-env.sh
然后编辑:
扫描二维码关注公众号,回复:
15278540 查看本文章
![](/qrcode.jpg)
vi sqoop-env.sh
文件末尾加入一下配置:
#Set the path for where zookeper config dir is
export ZOOCFGDIR= /opt/zookeeper-3.4.10
export HADOOP_COMMON_HOME=/opt/hadoop-2.9.2
export HADOOP_MAPRED_HOME=/opt/hadoop-2.9.2
export HIVE_HOME=/opt/apache-hive-2.3.9
#export HBASE_HOME=/home/hadoop/hbase-2.1.0(当前服务器未安装HBase,所以不设置)
注:上面的路径要改为自己的路径和版本号
6:上传MySQL所需Jar包
将mysql的jar包上传至/opt/sqoop-1.4.7.bin__hadoop-2.6.0/lib,
mysql需要mysql-connector-java-5.1.32.jar以上版本支持。
7.登录数据库
创建数据库
使用数据库
创建表
展示表
插入数据
查询表里的数据
建主键
8.启动Sqoop
重新启动Mysql
systemctl restart mysqld
启动Hadoop
cd /opt /hadoop/bin
start-all.sh
9.使用Sqoop查看数据库
cd /opt/sqoop/
bin/sqoop list-databases --connect jdbc:mysql://master:3306/ --username root --password Root@123(数据库账号密码)
查看数据表
bin/sqoop list-tables --connect jdbc:mysql://192.168.41.110:3306/mytable --username root --password Root@123
10.使用Sqoop将Mysql数据导入到hdfs中
先创建hdfs目录:
hdfs dfs -mkdir /sqoop
并将mysql数据库导出到该目录下
bin/sqoop import "-Dorg.apache.sqoop.splitter.allow_text_splitter=true" --connect jdbc:mysql://192.168.41.110:3306/student --username root --password Root@123 --table mytable --target-dir /sqoop/mytable
11.查看是否导入成功
hdfs dfs -ls /sqoop/mytable
hdfs dfs -cat /sqoop/mytable/p*
或者逐条查询
hdfs dfs -cat /sqoop/mytale/part-m-00001
实验完成!
注意:需要关防火墙、需启动三个虚拟机