介绍
Apache Sqoop是一个用于在Apache Hadoop和关系型数据库之间传输数据的强大工具。它提供了一种高效的方式,让用户能够将结构化数据从关系型数据库导入到Hadoop的分布式文件系统(HDFS)中,并支持反向操作,将数据从Hadoop导出到关系型数据库。
Sqoop的主要功能包括数据导入和导出,以及与各种关系型数据库系统的集成。在数据湖或数据仓库的构建过程中,Sqoop是一个不可或缺的工具,可以方便地进行大规模数据的传输和同步。
环境准备
在开始Sqoop的安装之前,请确保您已经满足以下基本要求:
• Hadoop集群安装配置:Sqoop需要在Hadoop环境中运行,因此确保您的Hadoop集群已经正确安装和配置。
• 关系型数据库:准备好用于数据传输的关系型数据库,如MySQL、Oracle等,并记录下数据库的连接信息。
安装部署
1、解压
从官网下载所需版本的安装包,将其上传到虚拟机中并解压
tar -zxf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C /opt/module/
2、配置环境变量
vi /etc/profile
export SQOOP_HOME=/opt/module/sqoop-1.4.6.bin__hadoop-2.0.4-alpha
export PATH=$PATH:$SQOOP_HOME/bin
# 刷新环境变量
source /etc/profile
3、修改配置文件
在sqoop根目录下的conf目录中:重命名配置文件
cd /opt/module/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/conf
mv sqoop-env-template.sh sqoop-env.sh
vi sqoop-env.sh
# hadoop安装路径根据自己的情况进行修改
export HADOOP_COMMON_HOME=/opt/module/hadoop-3.1.3
export HADOOP_MAPRED_HOME=/opt/module/hadoop-3.1.3
4、拷贝jdbc驱动到sqoop安装目录的lib目录下
cp mysql-connector-java-5.1.37-bin.jar /opt/module/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/lib/
5、验证sqoop
cd /opt/module/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/bin
# 当前路径下执行
./sqoop help
执行结果如下:
Available commands:
codegen Generate code to interact with database records
create-hive-table Import a table definition into Hive
eval Evaluate a SQL statement and display the results
export Export an HDFS directory to a database table
help List available commands
import Import a table from a database to HDFS
import-all-tables Import tables from a database to HDFS
import-mainframe Import datasets from a mainframe server to HDFS
job Work with saved jobs
list-databases List available databases on a server
list-tables List available tables in a database
merge Merge results of incremental imports
metastore Run a standalone Sqoop metastore
version Display version information
6、测试sqoop是否能成功连接数据库
# 以下命令根据自身情况自行修改
bin/sqoop list-databases --connect jdbc:mysql://bigdata1:3306/ --username root --password 123456
输出结果如下:
information_schema
metastore
mysql
oozie
performance_schema
标签:bin,opt,sqoop,部署,Sqoop,hadoop,module,安装
From: https://www.cnblogs.com/zyanch/p/17974373