Sqoop的安装与测试

news/2024/10/11 3:25:11/

这里写目录标题

  • 什么是Sqoop?
  • Sqoop的安装与配置
    • 安装
    • 测试

什么是Sqoop?

Sqoop就是hadoop和mysql的一个中间介质 , 作用就是可以将hadoop中的数据传到mysql中 , 或将mysql中的数据导入到hadoop

Sqoop的安装与配置

安装

详细代码

//解压安装
[root@hadoop soft]# tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
[root@hadoop soft]# rm -rf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
[root@hadoop soft]# ls
hadoop  hive  jdk  mysql5.7  sqoop-1.4.7.bin__hadoop-2.6.0
[root@hadoop soft]# mv sqoop-1.4.7.bin__hadoop-2.6.0/ sqoop
[root@hadoop soft]# ls
hadoop  hive  jdk  mysql5.7  sqoop//配置环境变量
[root@hadoop sqoop]# vim /etc/profile.d/sqoop.sh
[root@hadoop sqoop]# cat /etc/profile.d/sqoop.sh 
SQOOP_HOME=/usr/soft/sqoop
PATH=$PATH:$SQOOP_HOME/bin
CLASSPATH=$CLASSPATH:$SQOOP_HOME/lib
export SQOOP_HOME PATH CLASSPATH
[root@hadoop sqoop]# source /etc/profile.d/sqoop.sh//修改配置文件
[root@hadoop sqoop]# cd conf
[root@hadoop conf]# ls
oraoop-site-template.xml  sqoop-env-template.cmd  sqoop-env-template.sh  sqoop-site-template.xml  sqoop-site.xml
[root@hadoop conf]# cp sqoop-env-template.sh sqoop-env.sh
[root@hadoop conf]# vim sqoop-env.sh//下载jdbc驱动
[root@hadoop conf]# cd ..
[root@hadoop sqoop]# ls
bin        CHANGELOG.txt  conf  ivy      lib          NOTICE.txt   README.txt       sqoop-patch-review.py  src
build.xml  COMPILING.txt  docs  ivy.xml  LICENSE.txt  pom-old.xml  sqoop-1.4.7.jar  sqoop-test-1.4.7.jar   testdata
[root@hadoop sqoop]# cd lib
[root@hadoop lib]# ls//这里能看到有mysql-connector-java-5.1.46.jar 即可//验证Sqoop
[root@hadoop lib]# sqoop help
[root@hadoop lib]# sqoop list-databases --connect jdbc:mysql://localhost:3306/ --username root --password 1234

分步详解

//sqoop.sh内容SQOOP_HOME=/usr/soft/sqoopPATH=$PATH:$SQOOP_HOME/binCLASSPATH=$CLASSPATH:$SQOOP_HOME/libexport SQOOP_HOME PATH CLASSPATH

[root@hadoop sqoop]# source /etc/profile.d/sqoop.sh

修改配置文件

  • 路径
    cd /usr/soft/sqoop/conf
  • 复制配置文件
    [root@hadoop conf]# cp sqoop-env-template.sh sqoop-env.sh
  • 修改配置文件
    [root@hadoop conf]# vim sqoop-env.sh
    //编辑的时候把#去掉(让代码生效)
sqoop依赖zookeeper,如果没有安装zookeeper可以先用默认的zookeeper  
vim sqoop-env.shexport HADOOP_COMMON_HOME=/usr/soft/hadoop
export HADOOP_MAPRED_HOME=/usr/soft/hadoop
export HIVE_HOME=/usr/soft/hive
//export ZOOKEEPER_HOME=/usr/soft/zookeeper
//export ZOOCFGDIR=/usr/soft/zookeeper
//export HBASE_HOME=/usr/soft/hbase

下载JDBC驱动

  • 将jdbc驱动包上传到sqoop的lib目录下 :
    在这里插入图片描述

测试

  • 验证Sqoop(我们可以通过某一个command来验证sqoop配置是否正确:)
    sqoop help
  • 测试Sqoop是否能够成功连接数据库
    //注意 : 要写自己的用户名和密码
    sqoop list-databases --connect jdbc:mysql://localhost:3306/ --username root --password 1234
  • 出现如下测试成功
19/07/27 18:53:34 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
19/07/27 18:53:34 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
19/07/27 18:53:34 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
information_schema
hive_metadata
mysql
test
test2

尝试用sqoop导出数据到mysql中

  • 在mysql中创建一个新的数据库
    在这里插入图片描述
  • 建表
    在这里插入图片描述
  • 数据准备
    cd /usr/data
    vim dept.txt
10	ACCOUNTING	1700
20	RESEARCH	1800
30	SALES	1900
40	OPENATIONS	1700
10	ACCOUNTING	1700
20	RESEARCH	1700
30	SALES	1900
40	OPENATIONS	1700

//上传到hdfs中
hdfs dfs -put dept.txt //user/hive/warehouse/dept
//打开hive
[root@hadoop ~]# hive
//创建部门表
create external table if not exists default.dept( deptno int, dname string, loc int ) row format delimited fields terminated by '\t';
//(从本地)导入数据到部门表中
load data local inpath '/user/data/dept.txt' into table default.dept;
//查询结果
select * from dept;

//导入到本地的mysql中

bin/sqoop export \
--connect jdbc:mysql://localhost:3306/keshihua \
--username root \
--password 1234 \
--table dept \
--fields-terminated-by "\t" \
--export-dir /user/hive/warehouse/dept

执行完 , 可以看到数据导入到mysql中了

在这里插入图片描述
如果这里报错了
可以---->主机IP号:50070/logs---->到这个网址中 , 看自己的log日志(syslog)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/1464059.html

相关文章

【前端之npm镜像地址】

npm镜像地址 淘宝镜像地址华为镜像地址腾讯云镜像地址 淘宝镜像地址 npm config set registry https://registry.npmmirror.com查看镜像设置: npm config get registry 华为镜像地址 npm config set registry https://mirrors.huaweicloud.com/repository/npm/ 腾讯云镜像地…

集合的交集、并集和差集运算

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 集合最常用的操作就是进行交集、并集、差集和对称差集运算。进行交集运算时使用“&”符号,进行并集运算时使用“|”符号&…

灵动微单片机洗衣机方案——【软硬件开发支持】

RAMSUN英尚以洗衣机洗涤主驱电机为例,主驱电机和多电机控制首选MM32SPIN0280.灵动微电子能够提供完整的软硬件开发支持,目前方案已经在主流家电厂出货。 洗衣机方案 皮带洗衣机 DD直驱洗衣机 波轮洗衣机 Mini壁挂和桌面洗衣机 洗涤烘干双变频方案 热泵烘…

【Python快速上手(三十四)】- Python math 模块

目录 Python快速上手(三十四)- Python math 模块Python math 模块详解1. 导入 math 模块2. 基本数学运算3. 三角函数4. 双曲函数5. 特殊函数6. 浮点运算辅助函数7. 常量8. 实际应用案例9. 小结 Python快速上手(三十四)- Python ma…

ubuntu-24.04系统静态Mac和IP配置

操作系统版本(桌面版):ubuntu-24.04-desktop-amd64.iso 原因说明:因网络的IP地址和Mac是预分配的,所以ubuntu系统需要修改网卡的mac地址和IP才能访问,网络查了半天资料都没成功,后再界面提示&a…

synopsys EDA 2016 合集 下载

包含如下安装包,如需安装服务也可联系我 FineSim_vL_2016.03 Laker201612 Library Compiler M-2016.12 Update Training PrimeTime M-2016.12 Update Training StarRC M-2016.12 Update Training SynopsysInstaller_v3.3 TSMC-65nm(OA) fm_vL-2016.03-SP1 fpga_vL-…

Xshell远程连接服务器需要哪些依赖包、

在安装 Xshell 时,您需要确保系统中安装了必要的依赖库文件。这些依赖库文件对于 Xshell 的正常运行至关重要。虽然具体的依赖库文件可能会根据您的操作系统和安装环境有所不同,但通常包括以下几种: libXdmcp-devellibXinerama-devellibXft-…

Mysql 插入或者更新 踩坑

最近在做电商项目,里面存在定时同步的代理商接口,接口xml里面使用了 MySQL的插入或者更新语法,我测试的时候老是发现数据没有更新,点进去才发现这个坑,路过的xdm 可以看下. 我的代码就不贴上来了,写一下具…