【hadoop】Sqoop数据迁移工具的安装部署

一、Sqoop安装与配置

步骤:

1、使用XFTP将Sqoop安装包sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz发送到master机器的主目录。

2、解压安装包:

复制代码
tar -zxvf ~/sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz

3、修改文件夹的名字,将其改为sqoop,或者创建软连接也可:

复制代码
mv ~/sqoop-1.4.6.bin__hadoop-2.0.4-alpha ~/sqoop

4、Sqoop的相关配置文件位于安装路径下的conf文件夹中,进入到该目录下,修改相关配置文件即可。

复制代码
cd ~/sqoop/conf

5、修改sqoop-env.sh配置文件,该文件一开始并不存在:

复制代码
vim sqoop-env.sh

在对应的地方补充上Hadoop、Hive、HBase、ZooKeeper等的安装路径即可,内容如下:

复制代码
export HADOOP_COMMON_HOME=/home/hadoop/hadoop-2.9.2
export HADOOP_MAPRED_HOME=/home/hadoop/hadoop-2.9.2
export HBASE_HOME=/home/hadoop/hbase
export HIVE_HOME=/home/hadoop/hive
export ZOOCFGDIR=/home/hadoop/zookeeper-3.4.6

需要根据你的实际情况修改,配置文件修改完成后保存。

6、配置环境变量,后续只需要在master上启动HBase,因此只在master上配置即可:

复制代码
vim ~/.bashrc

在文件末尾添加以下内容:

复制代码
export SQOOP_HOME=/home/hadoop/sqoop
export PATH=$SQOOP_HOME/bin:$PATH

保存文件,然后刷新环境变量或重新启动命令行终端:

复制代码
source ~/.bashrc

7、添加MySQL驱动包,将mysql-connector-java-5.1.38.jar驱动包上传到master主机上,并把它放到Sqoop安装目录下的lib文件夹内即可:

复制代码
mv ~/mysql-connector-java-5.1.38.jar ~/sqoop/lib/

二、测试运行

前提:确保Zookeeper、HDFS、YARN三个重要组件都正确启动。

步骤:

1、使用help命令查看Sqoop的用法,验证安装是否成功:

复制代码
sqoop help

2、测试MySQL数据库能否成功连接:

复制代码
sqoop list-databases --connect jdbc:mysql://localhost --username root -password 123456

如果能打印出本地MySQL数据库里面的数据库名称列表,即为连接本地数据库成功。

3、(可选)授予本地MySQL数据库root账户远程访问权限:

先登录到MySQL中:

复制代码
mysql -u root -p

然后执行以下语句:

复制代码
mysql> grant all on *.* to 'root'@'master' identified by '123456' with grant option;
mysql> grant all on *.* to 'root'@'%' identified by '123456' with grant option;
mysql> flush privileges;

执行完上述语句,就可以把上面连接数据库的localhost,改成主机名或者ip地址,也可以使用root用户远程连接本地的这个MySQL数据库了。

相关推荐
my一阁11 小时前
2025-web集群-问题总结
前端·arm开发·数据库·nginx·负载均衡·web
JIngJaneIL13 小时前
篮球论坛|基于SprinBoot+vue的篮球论坛系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·篮球论坛系统
一只叫煤球的猫15 小时前
MySQL 索引的 “最左前缀原则”,用查字典的例子讲透
数据库·mysql·性能优化
一只小bit16 小时前
MySQL常用内置函数整理:提高你的查询效率
数据库·mysql·数据完整性·表约束
chxii17 小时前
ISO 8601日期时间标准及其在JavaScript、SQLite与MySQL中的应用解析
开发语言·javascript·数据库
小丁爱养花19 小时前
Redis 内部编码/单线程模型/string
数据库·redis·缓存·1024程序员节
l1t19 小时前
利用DuckDB SQL求解集合数学题
数据库·sql·算法·集合·duckdb
筵陌19 小时前
MYSQL表的操作
数据库·mysql·1024程序员节