大数据学习(6)

大数据学习(4)和(5)都是项目案例实战,因为涉及到某次生产实习,所以会在活动结束之后再进行发布。

本次学习主要是了解sqoop的安装、使用,重点是sqoop作为桥梁和hive、hadoop和mysql数据库的使用。因为一些应用的使用如果后台直接用hsql来进行增删改查,那么花费的事件是非常长的,后台的逻辑实现主要是用mysql完成数据库的操作。

0 版本明确

这个操作非常重要!
这个操作非常重要!
这个操作非常重要!

很多教程都忽略了这个问题,或者说找到教程就直接用会引发一系列的问题都是因为没有注重搭建的生产环境版本号。

本次的各个软件版本如下:

  • hadoop version 3.3.0
  • hive version 3.1.2
  • java version 1.8.0
  • mysql version 5.7.29

一定要看准版本号,看使用手册里版本号的适应,否则严重情况下就是生产环境直接崩溃。

对于sqoop,选择sqoop version 1.4.7 ,应该是sqoop 1的最后一版本。sqoop 2看其他博主的讲解说有错误不好解决。

1 sqoop 安装

参考博客:
https://blog.csdn.net/weixin_42065509/article/details/125420496

然后这里出现了一个问题,在final shell中直接传入之后,添加完系统路径,直接在命令行调用sqoop命令时,出现权限不够的问题。这里的第一反应是sudo指令,但是不行。问题解决是在finalshell里设置文件夹权限。
要把执行给勾一下。
在这里插入图片描述

另外贴一下相关链接:

sqoop直接下载
mysql connector 的jar包

官网上有的就下载官网,没有的情况下再思考百度云。

2 mysql

2.1 mysql安装

这里的完成主要是在搭建环境时完成,单独列出来是因为后期的mysql数据库肯定得和hive分开,用多台服务器。我在这里是为了测试和最后web的部署,在操作主机(windows)上又搭了一个mysql环境。

2.2 mysql连接

2.2.0 mysql workbench连接

mysql的Windows版本在安装之后是自带一个workbench的,workbench对于mysql的连接是非常方便的,因为它用的是ftp协议,不是jdbc协议,管理数据库可视化操作是非常方便的。

tips:对于数据库的密码一定要记住,不能忘记,或者说忘记之后是非常麻烦的一件事情。

在这里插入图片描述
上图可以看到连接到数仓node1节点是可以直接mysql workbench连接的。

2.2.1 mysql第三方连接

2.2.1.1 Datagrip连接 本地机器

注意,在没有对目标mysql进行用户管理之前,你能够进行的操作用户就是root@localhost,用自己的网络ip地址也是不行的。因为这边涉及到用户管理和权力授予,第三方连接在一开始只能够本地登录操作。

如果出现时区设置的问题,要根据数据库的主机时间设置时间。

在这里插入图片描述
在这里插入图片描述

2.2.1.2 sqoop连接 本地机器

关于连接sqoop命令可以看相关的博客。

测试命令:

sqoop list-databases \
-connect jdbc:mysql://192.168.88.151:3306/ -username root -password hadoop

在这里插入图片描述

注意,这里连接到的mysql是hadoop和hive用的底层数据库,即本地的mysql,并不是远程的mysql数据库。

2.2.1.3 sqoop连接 远程机器
2.2.1.3.1 mysql授权

好像centos7 是允许root用户在不同的机器上登录的,就是说作为远程机器是可以直接用root操作的(或者说我使用的是被人设置好的)。只有win版的mysql没有在开始设置。

一开始是发现在win版里无法用sqoop连接到win搭建的mysql,解决参考博客:

这是centos 7的mysql.user里的user,host:
在这里插入图片描述
这是win版的mysql.user里的user,host:
在这里插入图片描述

在这里创建了一个类似root的超级用户。感觉不如叫root

create user 'ss'@'%' identified by '12345678';
grant ALL privileges on *.* to 'ss'@'%';
2.2.1.3.2 mysql设置时间区

在进行sqoop连接时还报错了时间区。

Mysql:The server time zone value ‘PDT’ is unrecognized

select now();
set global time_zone = '+8:00';

3 sqoop命令

按照这个命令格式来写就行。
【Sqoop】Sqoop的使用(连接MySQL、Hive)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
尚硅谷是一家知名的IT培训机构,提供了丰富的大数据学习资源和课程。以下是基于尚硅谷提供的大数据学习路线的建议: 1. 基础知识:开始学习前,建议先掌握Java编程语言和数据库基础知识,这些对于后续学习大数据技术非常有帮助。 2. 大数据基础:尚硅谷提供了《大数据基础入门》课程,该课程包含了大数据技术的概述、Hadoop生态系统、HDFS分布式文件系统等基础内容。 3. 分布式计算:学习《Hadoop生态系统》课程,深入了解Hadoop的核心组件,如MapReduce、HDFS、YARN等,并掌握基本的Hadoop集群搭建和调优技巧。 4. 数据仓库与数据湖:学习《数据仓库与数据湖》课程,了解数据仓库和数据湖的概念、架构和设计原则,以及常用的数据仓库工具和技术。 5. 大数据实时计算:学习大数据实时计算》课程,掌握Spark、Flink等实时计算框架的使用,了解流式计算和批处理计算的特点和应用场景。 6. 数据分析与挖掘:学习大数据分析与挖掘》课程,掌握常用的数据分析和挖掘工具和算法,如机器学习、数据挖掘、推荐系统等。 7. 数据可视化与报告:学习《数据可视化与报表工具》课程,了解Tableau、Power BI等可视化工具的使用,学会将数据分析结果以直观的方式呈现。 尚硅谷还提供了大量的实战项目和案例,可以帮助学员将所学知识应用于实际场景中。此外,他们还提供了一对一的辅导和讨论群,可以与老师和其他学员交流和分享经验。 以上是基于尚硅谷提供的资源和课程所建议的大数据学习路线,你可以根据自己的实际情况和兴趣进行选择和调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值