Sqoop【部署 01】CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【2月更文挑战第8天】Sqoop CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)

@[TOC](目前 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单机版安装配置》 :smiley:

[root@tcloud ~]# hadoop version
Hadoop 3.1.3

4.安装配置

# 1.解压并移动到/usr/local/sqoop/下
tar -zxvf sqoop-1.4.7.bin-hadoop-2.6.0.tar.gz
# 这里注意一下 官网下载的安装包是【bin__hadoop】我改成-了 所以解压之后是双下划线
mv sqoop-1.4.7.bin__hadoop-2.6.0/ /usr/local/sqoop/

# 2.配置环境变量:
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 # 显示/usr/local/sqoop表示成功

# 3.sqoop配置
# 复制${SQOOP_HOME}/conf/sqoop-env-template.sh 并修改 sqoop-env.sh 配置文件
cp sqoop-env-template.sh sqoop-env.sh
vim sqoop-env.sh
    # 配置中HADOOP_COMMON_HOME和HADOOP_MAPRED_HOME是必须配置的 其他的用到了再进行配置

    # Set Hadoop-specific environment variables here.
    #Set path to where bin/hadoop is available
    export HADOOP_COMMON_HOME=/usr/local/hadoop-3.1.3
    #Set path to where hadoop-*-core.jar is available
    export HADOOP_MAPRED_HOME=/usr/local/hadoop-3.1.3

    #set the path to where bin/hbase is available
    #export HBASE_HOME=

    #Set the path to where bin/hive is available
    #export HIVE_HOME=

    #Set the path for where zookeper config dir is
    #export ZOOCFGDIR=

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 ~]# sqoop version
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 ,注释掉不必要的检查。

## Moved to be a runtime check in sqoop.
#if [ ! -d "${HBASE_HOME}" ]; then
# echo "Warning: $HBASE_HOME does not exist! HBase imports will fail."
# echo 'Please set $HBASE_HOME to the root of your HBase installation.'
#fi
## Moved to be a runtime check in sqoop.
#if [ ! -d "${HCAT_HOME}" ]; then
# echo "Warning: $HCAT_HOME does not exist! HCatalog jobs will fail."
# echo 'Please set $HCAT_HOME to the root of your HCatalog installation.'
#fi
#if [ ! -d "${ACCUMULO_HOME}" ]; then
# echo "Warning: $ACCUMULO_HOME does not exist! Accumulo imports will fail."
# echo 'Please set $ACCUMULO_HOME to the root of your Accumulo installation.'
#fi

再次验证,发现清爽了很多 :stuck_out_tongue_winking_eye:

[root@tcloud ~]# sqoop version
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安装配置成功 :ok_hand: 使用时还会遇到相当多的问题,随后会详

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
Ubuntu Linux 测试技术
Linux系统之部署轻量级Markdown文本编辑器
【10月更文挑战第6天】Linux系统之部署轻量级Markdown文本编辑器
107 1
Linux系统之部署轻量级Markdown文本编辑器
|
3月前
|
监控 前端开发 Linux
centos7系统安装部署zabbix5.0
【9月更文挑战第23天】在CentOS 7系统上部署Zabbix 5.0的步骤包括:安装MariaDB数据库及必要软件包,配置Zabbix仓库,设置数据库并导入Zabbix数据库架构,配置Zabbix服务器与前端参数,启动相关服务,并通过浏览器访问Web界面完成安装向导。
190 0
|
2月前
|
搜索推荐 Linux 测试技术
Linux系统之部署homer静态主页
【10月更文挑战第11天】Linux系统之部署homer静态主页
83 41
Linux系统之部署homer静态主页
|
2月前
|
运维 监控 Linux
Linux系统之部署Linux管理面板1Panel
【10月更文挑战第20天】Linux系统之部署Linux管理面板1Panel
103 3
Linux系统之部署Linux管理面板1Panel
|
2月前
|
Web App开发 资源调度 网络协议
Linux系统之部署IP工具箱MyIP
【10月更文挑战第5天】使用Docker部署Radicale日历和联系人应用Linux系统之部署IP工具箱MyIP
108 1
Linux系统之部署IP工具箱MyIP
|
2月前
|
Linux Shell 异构计算
在linux上部署yolov5和安装miniconda3
这篇文章介绍了在Linux系统上部署YOLOv5并安装Miniconda3的步骤,包括使用wget命令下载Miniconda安装脚本、安装Miniconda、初始化Conda环境、添加镜像源等。
105 3
在linux上部署yolov5和安装miniconda3
|
1月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
65 2
|
2月前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
1385 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
1月前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
37 3
|
2月前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
59 2