Hive - [02] 安装部署
一、相关链接地址
- Hive官网:https://hive.apache.org/
- Hive下载页面:https://downloads.apache.org/hive/
- 中科大镜像地址:http://mirrors.ustc.edu.cn/apache/hive/hive-3.1.2/
- 清华大学镜像地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/
- 镜像地址:https://dlcdn.apache.org/hive/
二、准备工作
Hive版本:apache-hive-3.1.2,角色规划如下
| 节点 | node01 | node02 | node03 |
| server | ○ | ||
| client | ○ | ○ | ○ |
三、Local模式
以derby作为hive的元数据库
1、将 apache-hive-3.1.2-bin.tar.gz上传到 node03节点的 /opt/software 目录下,并解压到 /opt/module目录
[root@node03 software]# tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/module/
[root@node03 software]# cd /opt/module/apache-hive-3.1.2-bin
[root@node03 apache-hive-3.1.2-bin]# ll
total 56
drwxr-xr-x 3 root root 157 Jun 7 00:19 bin
drwxr-xr-x 2 root root 4096 Jun 7 00:19 binary-package-licenses
drwxr-xr-x 2 root root 4096 Jun 7 00:19 conf
drwxr-xr-x 4 root root 34 Jun 7 00:19 examples
drwxr-xr-x 7 root root 68 Jun 7 00:19 hcatalog
drwxr-xr-x 2 root root 44 Jun 7 00:19 jdbc
drwxr-xr-x 4 root root 12288 Jun 7 00:19 lib
-rw-r--r-- 1 root root 20798 Aug 23 2019 LICENSE
-rw-r--r-- 1 root root 230 Aug 23 2019 NOTICE
-rw-r--r-- 1 root root 2469 Aug 23 2019 RELEASE_NOTES.txt
drwxr-xr-x 4 root root 35 Jun 7 00:19 scripts
2、修改配置文件 hive-env.sh,配置HADOOP_HOME
# 查看解压后的hive目录
[root@node03 apache-hive-3.1.2-bin]# cd conf/
[root@node03 conf]# ll
total 332
-rw-r--r-- 1 root root 1596 Aug 23 2019 beeline-log4j2.properties.template
-rw-r--r-- 1 root root 300482 Aug 23 2019 hive-default.xml.template
-rw-r--r-- 1 root root 2365 Aug 23 2019 hive-env.sh.template
-rw-r--r-- 1 root root 2274 Aug 23 2019 hive-exec-log4j2.properties.template
-rw-r--r-- 1 root root 3086 Aug 23 2019 hive-log4j2.properties.template
-rw-r--r-- 1 root root 2060 Aug 23 2019 ivysettings.xml
-rw-r--r-- 1 root root 3558 Aug 23 2019 llap-cli-log4j2.properties.template
-rw-r--r-- 1 root root 7163 Aug 23 2019 llap-daemon-log4j2.properties.template
-rw-r--r-- 1 root root 2662 Aug 23 2019 parquet-logging.properties
# 备份 hive-env.sh
[root@node03 conf]# cp -a hive-env.sh.template hive-env.sh
# 配置HADOOP_HOME
[root@node03 conf]# vim hive-env.sh
# 已配置HADOOP_HOME路径
[root@node03 conf]# cat hive-env.sh | grep -i HADOOP_HOME
# Set HADOOP_HOME to point to a specific hadoop install directory
# HADOOP_HOME=${bin}/../../hadoop
HADOOP_HOME=/opt/module/hadoop-2.5.2
[root@node03 conf]#
3、启动Zookeeper、HDFS(ZKFC、JournalNode、NameNode、DataNode)、Yarn(ResourceManager、NodeManager)
# 启动Zookeeper
cd /opt/module/zookeeper-3.4.5
bin/zkServer.sh restart
# 启动HDFS&Yarn
cd /opt/module/hadoop-2.5.2
sbin/start-all.sh
4、初始化配置(dbType=derby)
cd /opt/module/apache-hive-3.1.2-bin
bin/schematool -dbType derby -initSchema
初始化时,遇到如下报错,经过分析,是hadoop和hive的jar包冲突。

解决方法:从hadoop的guava-27.0-jre.jar拷贝到hive的lib目录中,guava-19.0.jar可以mv到其他地方。

具体操作命令如下
[root@node03 ~]# ll /opt/module/hadoop-3.2.1/share/hadoop/common/lib/guava-27.0-jre.jar
-rw-r--r-- 1 root root 2747878 9月 10 2019 /opt/module/hadoop-3.2.1/share/hadoop/common/lib/guava-27.0-jre.jar
[root@node03 ~]#
[root@node03 ~]# ll /opt/module/apache-hive-3.1.2-bin/lib/guava-19.0.jar
-rw-r--r-- 1 root root 2308517 9月 27 2018 /opt/module/apache-hive-3.1.2-bin/lib/guava-19.0.jar
[root@node03 ~]#
[root@node03 ~]# mkdir /home/bak_hive
[root@node03 ~]# mv /opt/module/apache-hive-3.1.2-bin/lib/guava-19.0.jar /home/bak_hive/
[root@node03 ~]# cp -a /opt/module/hadoop-3.2.1/share/hadoop/common/lib/guava-27.0-jre.jar /opt/module/apache-hive-3.1.2-bin/lib/
重新进行初始化

5、访问hive

四、单用户模式
以mysql作为hive的元数据库
1、如果在此之前部署并运行了Local模式,需要先将Local模式产生的文件(日志和元数据)清除掉

2、配置conf/hive-site.xml(hive-default.xml.template是hive配置的很多参数,可以清空,只写入下面demo的配置。)

<configuration>
<!-- Hive数据仓库存储的位置;Hadoop中HDFS的位置 -->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/data/hive/data/</value>
</property>
<!-- 本地单用户启动 -->
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<!-- ------------------JDBC数据源配置------------------- -->
<!-- 连接路径 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.1.131:3306/hive?createDatabaseIfNotExist=true</value>
<!-- 创建数据库(true)、SSL(false)、时区(GMT)、批量执行(true)、返回主键(true) -->
</property>
<!-- 驱动包 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
<!-- 数据库账号 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!-- 数据库密码 -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>!QAZ2wsx..</value>
</property>
</configuration>
3、将mysql的jdbc jar包放到/opt/module/apache-hive-3.1.2-bin/lib下(我的mysql是8.0.28,所以是mysql-connector-java-8.0.28.jar)

4、在MySQL中授权root用户可以从任意主机连接

# 登录 MySQL(使用新设置的密码)
mysql -u root -p
# 授权 root 用户可以从任何 IP 访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_new_password' WITH GRANT OPTION;
# 如果你想限制特定的远程主机访问,可以替换 '%' 为具体的 IP 地址或网段
GRANT ALL PRIVILEGES ON *.* TO 'root'@'your_remote_ip_or_subnet' IDENTIFIED BY 'your_new_password' WITH GRANT OPTION;
# 刷新权限以应用更改
FLUSH PRIVILEGES;
5、初始化元数据,之后可以在mysql数据库中发现有一个hive的数据库,并且该数据库下有74张表。
bin/schematool -dyType mysql -initSchema

6、启动metastore(已测无效)
bin/hive -service metastore
7、访问hive,进行建库建表,然后观察hdfs上对应目录下的变化
bin/hive

8、向测试表插入几条数据,观察hdfs上该目录下的变化
五、多用户模式
— 要养成终生学习的习惯 —
Hive - [02] 安装部署的更多相关文章
- 【Hadoop离线基础总结】Hive的安装部署以及使用方式
Hive的安装部署以及使用方式 安装部署 Derby版hive直接使用 cd /export/softwares 将上传的hive软件包解压:tar -zxvf hive-1.1.0-cdh5.14. ...
- Hive的安装部署
1.环境准备 1.1软件版本 hive-0.14 下载地址 2.配置 安装hive的前提,必需安装好hadoop环境,可以参考我之前Hadoop社区版搭建,先搭建好hadoop环境:接下来我们开始配置 ...
- Hive学习之路(二)—— Linux环境下Hive的安装部署
一.安装Hive 1.1 下载并解压 下载所需版本的Hive,这里我下载版本为cdh5.15.2.下载地址:http://archive.cloudera.com/cdh5/cdh/5/ # 下载后进 ...
- Hive 系列(二)—— Linux 环境下 Hive 的安装部署
一.安装Hive 1.1 下载并解压 下载所需版本的 Hive,这里我下载版本为 cdh5.15.2.下载地址:http://archive.cloudera.com/cdh5/cdh/5/ # 下载 ...
- hive+postgres安装部署过程
master节点安装元数据库,采用postgres:#useradd postgres#password postgressu - postgreswget https://ftp.postgresq ...
- Hive基础概念、安装部署与基本使用
1. Hive简介 1.1 什么是Hive Hives是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能. 1.2 为什么使用Hive ① 直接使用 ...
- hive的本地安装部署,元数据存储到mysql中
要想使用Hive先要有hadoop集群的支持,使用本地把元数据存储在mysql中. mysql要可以远程连接: 可以设置user表,把localhost改为%,所有可连接.记住删除root其他用户,不 ...
- Hive 系列(一)安装部署
Hive 系列(一)安装部署 Hive 官网:http://hive.apache.org.参考手册 一.环境准备 JDK 1.8 :从 Oracle 官网下载,设置环境变量(JAVA_HOME.PA ...
- Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本)
Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本) Hive 安装依赖 Hadoop 的集群,它是运行在 Hadoop 的基础上. 所以在安装 Hive 之 ...
- Hive的安装与部署(MySQL作为元数据库)
Hive的安装与部署(MySQL作为元数据) (开始之前确保Hadoop环境已经启动,确保Linux下的MySQL已经安装好) 1. 安装Hive (1)下载安装包 可从apache上下载hi ...
随机推荐
- 【相邻不同型贪心】LeetCode767 重构字符串
题解 通常直接思考最佳策略是十分困难的,我们不妨思考每一种情况需要如何处理: 整个字符串只有一种字符 若字符串长度为 \(1\),那么字符串本身即为答案: 若字符串长度大于等于 \(2\),那么不存在 ...
- AI 与数据的智能融合丨大模型时代下的存储系统
WOT 全球技术创新大会2024·北京站于 6 月 22 日圆满落幕.本届大会以"智启新纪,慧创万物"为主题,邀请到 60+ 位不同行业的专家,聚焦 AIGC.领导力.研发效能.架 ...
- Redis应用—6.热key探测设计与实践
大纲 1.热key引发的巨大风险 2.以往热key问题怎么解决 3.热key进内存后的优势 4.热key探测关键指标 5.热key探测框架JdHotkey的简介 6.热key探测框架JdHotkey的 ...
- showModalBottomSheet setState 无法更新ui和高度设置问题
showModalBottomSheet setState 无法更新ui问题 首先理解showModalBottomSheet,本质上可以理解为路由入栈,在show之后弹出的页面其实是另一个页面了,此 ...
- manim边学边做--移动动画
在Manim中,其实直线移动的动画非常简单,每个Mobject对象都有animate属性, 通过obj.animate.shift()或者obj.animate.move_to()很容易将对象从一个位 ...
- Qt编写安防视频监控系统42-用户权限
一.前言 前几年写这个视频监控系统的时候,就规划过要加入用户权限管理,因为不属于急需要的功能一直耽搁至今,近期刚好其他几个项目要需要这个功能,和秘钥认证一样,于是一鼓作气就把这几个功能一块干掉,本次完 ...
- Qt开源作品3-串口调试助手
一.前言 这个作品很多年前就做了,经过了长达七八年的完善,当然也不是全身心的投入完善,也就是根据实际项目的需求不断完善的,尤其是模拟设备回复数据的功能,这个在很多用Qt做上位机开发非常实用,毕竟很多软 ...
- 安装OpenCV时提示缺少boostdesc_bgm.i文件的问题解决方案
安装OpenCV时,会遇到下面的错误 /home/zhang/slam/opencv-3.4.5/opencv_contrib/modules/xfeatures2d/src/boostdesc.cp ...
- [转]spring-framework-x.x.x.RELEASE-dist下载教程
原文链接: spring-framework-x.x.x.RELEASE-dist下载教程
- 理解IM消息“可靠性”和“一致性”问题,以及解决方案探讨
本文作者"商文默",本次有修订和改动. 1.写在前面 即时通讯网整理的大量IM技术文章中(见本文末"参考资料"一节),有关消息可靠性和一致性问题的文章占了很大比 ...