写在前面
- 某年某月的某一天,我发了这样的一条朋友圈。
![Sqoop](https://i-blog.csdnimg.cn/blog_migrate/73431221f39bac2c6539467bc67e7d1a.jpeg)
- 我之前安装的Sqoop1.4.7在使用Java API的时候出了点问题,打算重新装Sqoop1.99.7。
- 然而,在参照了一众博客后,在修改了无数的配置后,我终于…还是没装上。
- 当时报了这个错误。
![Sqoop](https://i-blog.csdnimg.cn/blog_migrate/c9253ed45ed4195192e6e0c77b2b9f20.png)
- 因此,我查看了Sqoop官方文档(官方文档它不香吗?!),安装成功。
安装包下载
- 官方下载地址,切记一定要下载sqoop-1.99.7-bin-hadoop200.tar.gz
- 官方下载地址如果加载不出来的话,可以点击这里下载,提取码brp8。
具体安装步骤
- Sqoop Server是作为Hadoop的Client,因此,在安装Sqoop的机器上需要能访问Hadoop的相关配置。
- 将安装包放到某一目录下,执行下列命令。
# tar -xvf sqoop-1.99.7-bin-hadoop200.tar.gz
# mv sqoop-1.99.7-bin-hadoop200.tar.gz /usr/lib/sqoop
# cd /usr/lib/sqoop
- Sqoop Server以下四个变量需要指向对应的Hadoop库,分别是
$HADOOP_COMMON_HOME
、$HADOOP_HDFS_HOME
、$HADOOP_MAPRED_HOME
、$HADOOP_YARN_HOME
。如果设置了环境变量$HADOOP_HOME
,这四个变量会默认指向以下四个地址$HADOOP_HOME/share/hadoop/common
、$HADOOP_HOME/share/hadoop/hdfs
、$HADOOP_HOME/share/hadoop/mapreduce
、$HADOOP_HOME/share/hadoop/yarn
,因此在这一步骤我没做任何修改。
![Sqoop](https://i-blog.csdnimg.cn/blog_migrate/67f14d5f9d3047b1bc536e1ee612cd67.png)
- 执行以下命令,进入该目录。
# cd $HADOOP_HOME/etc/hadoop
编辑文件core-site.xml,添加以下配置。
<property>
<name>hadoop.proxyuser.sqoop2.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.sqoop2.groups</name>
<value>*</value>
</property>
- 执行以下命令,创建一个新的目录,将mysql-connector-java-5.1.46.jar包拷贝到该目录,并让
SQOOP_SERVER_EXTRA_LIB
指向该目录即可(在第6步中执行)。
# mkdir -p /var/lib/sqoop2/
# cp mysql-jdbc*.jar /var/lib/sqoop2/
# cp postgresql-jdbc*.jar /var/lib/sqoop2/
(按需执行该步骤)
注:mysql-connector-java-5.1.46.jar下载,提取码jowk。 - 执行命令
vi /etc/profile
,打开配置文件进行编辑,在文件末尾添加以下代码并保存退出。
export SQOOP_HOME=/usr/lib/sqoop
export SQOOP_SERVER_EXTRA_LIB=/var/lib/sqoop2
export PATH=$PATH:$SQOOP_HOME/bin
- 执行命令
. /etc/profile
。 - 初始化Sqoop元数据存储库。
# sqoop2-tool upgrade
- 验证是否配置成功。
# sqoop2-tool verify
![Sqoop](https://i-blog.csdnimg.cn/blog_migrate/b9806140c0d631ff4c24eda9085a92fb.png)
- 开启Sqoop服务。
# sqoop2-server start
- 关闭Sqoop服务。
# sqoop2-server stop
- 如需进一步配置请自行修改$SQOOP_HOME/conf目录下的配置文件sqoop.properties。