目前 Sqoop 有 Sqoop1 和 Sqoop2 两个版本,但是截至到目前,官方并不推荐使用 Sqoop2,因为其与 Sqoop1 并不兼容,且功能还没有完善,所以这里优先推荐使用 Sqoop 1。本次安装的文件是【Sqoop1的最新版本】 sqoop-1.4.7.bin-hadoop-2.6.0.tar.gz 以下内容均以此版本进行说明。
1.资源分享
链接:https://pan.baidu.com/s/1XRZs2PngAnrMczuD7Dn7Kg 提取码:w7b9 包含资源:(Sqoop1最新版)sqoop-1.4.7.bin-hadoop-2.6.0.tar.gz 和 sqoop-1.4.7.tar.gz (Sqoop2最新版)sqoop-1.99.7-bin-hadoop200.tar.gz 和 sqoop-1.99.7.tar.gz
2.简单介绍
Sqoop 是一个常用的数据迁移工具,主要用于在不同存储系统之间实现数据的导入与导出:
- 导入数据:从 MySQL,Oracle 等关系型数据库中导入数据到 HDFS、Hive、HBase 等分布式文件存储系统中;
- 导出数据:从分布式文件系统中导出数据到关系数据库中。
Sqoop1的原理是将执行命令转化成 MapReduce 作业来实现数据的迁移,如下图:
3.前置条件
由于 Sqoop1 是将执行命令转化成 MapReduce 作业来实现数据的迁移,所有必须安装Hadoop,我安装的是3.1.3版本的,安装教程可参考《Hadoop3.1.3单机版安装配置》 😃
[root@tcloud ~]
Hadoop 3.1.3
4.安装配置
tar -zxvf sqoop-1.4.7.bin-hadoop-2.6.0.tar.gz
mv sqoop-1.4.7.bin__hadoop-2.6.0/ /usr/local/sqoop/
vim /etc/profile.d/my_env.sh
export SQOOP_HOME=/usr/local/sqoop
export PATH=$SQOOP_HOME/bin:$PATH
chmod +x /etc/profile.d/my_env.sh
source /etc/profile.d/my_env.sh
echo $SQOOP_HOME
cp sqoop-env-template.sh sqoop-env.sh
vim sqoop-env.sh
export HADOOP_COMMON_HOME=/usr/local/hadoop-3.1.3
export HADOOP_MAPRED_HOME=/usr/local/hadoop-3.1.3
5.拷贝数据库驱动
将 MySQL 驱动包拷贝到 Sqoop1的安装目录的 ${SQOOP_HOME}/lib/ 目录下。百度网盘 mysql-connector-java-5.1.47.jar 分享:
链接:https://pan.baidu.com/s/1X15dNrH-B-U5oxw-H6sn8A
提取码:ibaj
6.验证
由于已经将 sqoop 的 bin 目录配置到环境变量,直接使用以下命令验证是否配置成功:
[root@tcloud ~]
Warning: /usr/local/sqoop/../hbase does not exist! HBase imports will fail.
Please set $HBASE_HOME to the root of your HBase installation.
Warning: /usr/local/sqoop/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /usr/local/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
2021-09-08 16:52:22,191 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Sqoop 1.4.7
git commit id 2328971411f57f0cb683dfb79d19d4d19d185dd8
Compiled by maugli on Thu Dec 21 15:59:58 STD 2017
出现对应的版本信息则代表配置成功:
2021-09-08 16:52:22,191 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Sqoop 1.4.7
这里出现的三个 Warning 警告是因为没有配置 $HBASE_HOME、$HCAT_HOME和$ACCUMULO_HOME,如果不使用HBase、HCatalog和Accumulo,忽略即可。Sqoop在启动时会去检查环境变量中是否有配置这些软件,如果想去除这些警告,可以修改${SQOOP_HOME}/bin/configure-sqoop ,注释掉不必要的检查。
再次验证,发现清爽了很多 😜
[root@tcloud ~]
2021-09-08 17:03:51,446 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Sqoop 1.4.7
git commit id 2328971411f57f0cb683dfb79d19d4d19d185dd8
Compiled by maugli on Thu Dec 21 15:59:58 STD 2017
7.总结
至此,Sqoop1安装配置成功 👌 使用时还会遇到相当多的问题,随后会详细说明,感谢大家的支持~
|