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

简介: 【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: 使用时还会遇到相当多的问题,随后会详

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
2月前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
312 4
MySQL二进制包安装
|
2月前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
404 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
2月前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
226 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
2月前
|
Ubuntu 关系型数据库 MySQL
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
本文详细介绍了在Ubuntu 24.04、22.04、20.04及Debian 12系统上,通过离线DEB包安装MySQL 8.0和8.4版本的完整步骤。涵盖下载地址、依赖处理、dpkg安装顺序、配置方法及服务启动验证,确保用户可顺利部署MySQL数据库。
946 0
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
|
2月前
|
运维 Ubuntu 关系型数据库
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
本文介绍了在Debian系列系统(如Ubuntu、Debian 11/12)中通过APT仓库安装MySQL 8.0和8.4版本的完整步骤,涵盖添加官方源、配置国内镜像、安装服务及初始化设置,并验证运行状态,适用于各类Linux运维场景。
830 0
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
|
2月前
|
Oracle 关系型数据库 MySQL
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
本文详细介绍在Rocky、CentOS、AlmaLinux、openEuler等主流Linux系统上,通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,涵盖下载、依赖处理、rpm/yum安装、服务启动、密码设置等关键环节,适用于多种企业级环境部署需求。
721 0
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
|
2月前
|
存储 关系型数据库 MySQL
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
MySQL是一款开源关系型数据库,高性能、易用、跨平台,支持多种存储引擎,广泛应用于Web开发、企业级应用等领域。本教程介绍其特点、架构及在主流Linux系统中的安装配置方法。
576 0
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
|
5月前
|
NoSQL 关系型数据库 Linux
ERPNext 搭建教程:Linux 一键部署与维护
ERPNext 是一款开源免费的企业资源计划系统,适用于中小企业信息化管理。基于 Python 和 Frappe 框架开发,支持财务、销售、人力、库存等模块,具备高度可定制性。本文介绍如何通过 Websoft9 在 Linux 下快速部署 ERPNext,并提供环境配置、系统维护等实用建议,适合开发者和企业用户快速上手。
824 7
ERPNext 搭建教程:Linux 一键部署与维护
|
5月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
581 13
|
5月前
|
关系型数据库 Linux Nacos
Rocky Linux 部署 Docker 和 NACOS 实例
本文介绍在阿里云环境下基于 Rocky Linux 搭建 Docker 并部署 Nacos 的完整流程。涵盖 Docker 安装、镜像加速配置、网络设置及 MySQL 与 Nacos 容器的创建,适用于开发与生产环境。
801 1