Sqoop的安装、配置与使用

1.虚拟机环境准备

  • (1) 虚拟机准备
    虚拟机的创建于配置在之前博客详细说过,需要的同学可以参考: Hadoop运行环境搭建中第1.1小节进行操作。

  • (2) 安装 MySQL
    安装MySQL在之前的博客中已经详细说过,没安装的同学可以参考: Hive基础—Hive简介、安装MySQL中第2.4小节进行操作。


2.Linux环境下安装Sqoop环境

2.1 安装Sqoop

  • (1) 进入到Sqoop安装包路径下
[xqzhao@hadoop100 ~]$ cd /opt/software/

注: Sqoop安装包下载地址: 点击进入Sqoop下载地址

  • (2) 解压安装文件到 /opt/module下面
[xqzhao@hadoop100 software]$ tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /opt/module/
  • (3) 查看是否解压成功
[xqzhao@hadoop100 software]$ ls /opt/module/
sqoop-1.4.7.bin__hadoop-2.6.0

// 修改 `sqoop-1.4.7.bin__hadoop-2.6.0` 的名称为 `sqoop`
[xqzhao@hadoop100 module]$ mv sqoop-1.4.7.bin__hadoop-2.6.0/ sqoop
  • (4) 配置环境变量
[xqzhao@hadoop100 module]$ sudo vim /etc/profile

#SQOOP_HOME
export SQOOP_HOME=/opt/module/sqoop
export PATH=$PATH:$SQOOP_HOME/bin

[xqzhao@hadoop100 module]$ source /etc/profile
  • (5) 添加 mysql 驱动包

mysql-connector-java-5.1.27-bin.jar 复制至 /opt/module/sqoop/lib/ 目录下。

[xqzhao@hadoop100 software]$ cp mysql-connector-java-5.1.27-bin.jar /opt/module/sqoop/lib/
  • (6) 添加 commons-lang-2.6.jar

commons-lang-2.6.jar 复制至 /opt/module/sqoop/lib/ 目录下。

[xqzhao@hadoop100 software]$ cp commons-lang-2.6.jar /opt/module/sqoop/lib/

: 博主刚开始并没有往 lib 中添加这个文件,报了一个错误 (所以最好加上):

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
  • (7) 修改 Sqoop 配置文件
`1.首先进入 sqoop 的 conf 文件夹`
[xqzhao@hadoop100 module]$ cd sqoop/conf/

`2.重命名配置文件为 sqoop-env.sh`
[xqzhao@hadoop100 conf]$ cp sqoop-env-template.sh sqoop-env.sh

`3.打开配置文件 sqoop-env.sh`
[xqzhao@hadoop100 conf]$ vim sqoop-env.sh

在文件中添加如下内容:

export HADOOP_COMMON_HOME=/opt/module/hadoop-3.2.1
export HADOOP_MAPRED_HOME=/opt/module/hadoop-3.2.1
export HIVE_HOME=/opt/module/hive
export ZOOKEEPER_HOME=/opt/module/zookeeper-3.5.7
export ZOOCFGDIR=/opt/module/zookeeper-3.5.7

因为博主目前只需要从 MySQL 导入到 HDFSHive,所以没有配置 HBase 的目录, 这并不影响使用。

  • (8) 验证 Sqoop 是否安装成功
[xqzhao@hadoop100 conf]$ sqoop -version

3.使用Sqoop进行数据导入导出

3.1 Sqoop 与 HDFS 之间的导入导出

参考 超详细的Sqoop介绍及安装使用文档 中第 6 小节。

3.2 Sqoop 与 Hive 导入导出

参考 超详细的Sqoop介绍及安装使用文档 中第 7 小节。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐