Hive【安装 01】hive-3.1.2版本安装配置(含 mysql-connector-java-5.1.47.jar 网盘资源)

我使用的安装文件是 apache-hive-3.1.2-bin.tar.gz ,以下内容均以此版本进行说明。

以下环境测试安装成功:

openEuler 22.03 (LTS-SP1)系统

MySQL-8.0.40

1.前置条件

  1. MySQL数据库

我安装的是 mysql-5.7.28 版本的,安装方法可参考《Linux环境安装MySQL5.7.28》。

bash 复制代码
[root@tcloud ~]# service mysqld status
 SUCCESS! MySQL running (18714)
  1. Hadoop环境

我安装的是 hadoop-3.1.3 版本的,安装方法可参考《Linux环境安装Hadoop3.1.3》。

bash 复制代码
[root@tcloud ~]# hdfs version
Hadoop 3.1.3

2.安装Hive

2.1 解压

bash 复制代码
# 解压安装包并移动到/usr/local/hive下
tar apache-hive-3.1.2-bin.tar.gz
mv ./apache-hive-3.1.2-bin/ /usr/local/hive

2.2 配置环境变量

配置环境变量的方法比较多,这里统一将环境变量放在 /etc/profile.d/my_env.sh 内。

bash 复制代码
# 配置环境变量:
vim /etc/profile.d/my_env.sh
# 添加 HIVE_HOME 和 PATH
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
# 使得配置的环境变量立即生效:
	# 首先是要赋权限【只操作一次就行】
	chmod +x /etc/profile.d/my_env.sh
source /etc/profile.d/my_env.sh

2.3 配置Hive

2.3.1 hive-env.sh

修改 ${HIVE_HOME}/conf/hive-env.sh 配置 HADOOP_HOME:

shell 复制代码
# 拷贝 Hive 的环境配置模板 hive-env.sh.template 修改 hive-env.sh 指定 Hadoop 的安装路径
# 【这一步是非必要的,如果你有多个Hadoop环境,配置的HADOOP_HOME并非Hive使用的,这个就要配置】
cp hive-env.sh.template hive-env.sh
vim /usr/local/hive/conf/hive-env.sh
	# 添加以下内容
	HADOOP_HOME=/usr/local/hadoop-3.1.3

2.3.2 hive-site.xml

新建 ${HIVE_HOME}/conf/hive-site.xml 文件,配置存放元数据的 MySQL 数据库地址、驱动、用户名和密码等【此时使用的Hadoop的MapReduce计算引擎,想修改成其他计算引擎也是在这个文件里进行配置】。

bash 复制代码
vim /usr/local/hive/conf/hive-site.xml

文件内容如下:

xml 复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://tcloud:3306/metastore?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;useSSL=false</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>root</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>tcloud@2021</value>
    </property>
    <property>
        <name>hive.metastore.schema.verification</name>
        <value>false</value>
    </property>
</configuration> 

4. 拷贝数据库驱动

将 MySQL 驱动包拷贝到 Hive 安装目录的 ${HIVE_HOME}/lib/ 目录下。百度网盘 mysql-connector-java-5.1.47.jar 分享:

bash 复制代码
链接:https://pan.baidu.com/s/1X15dNrH-B-U5oxw-H6sn8A 
提取码:ibaj

5. 初始化元数据库

当使用的 hive 是 1.x 版本时,可以不进行初始化操作,Hive 会在第一次启动的时候会自动进行初始化,但不会生成所有的元数据信息表,只会初始化必要的一部分,在之后的使用中用到其余表时会自动创建;当使用的 hive 是 2.x 3.x 版本时,必须手动初始化元数据库。初始化命令:

shell 复制代码
# schematool 命令在安装目录的 bin 目录下 由于上面已经配置过环境变量 在任意位置执行即可
schematool -dbType mysql -initSchema
# 显示如下信息 说明初始化结束
Initialization script completed
schemaTool completed

6. 启动

【需要先启动 hdfs】由于已经将 Hive 的 bin 目录配置到环境变量,直接使用以下命令启动,成功进入交互式命令行后执行 show databases 命令,无异常则代表搭建成功。

shell 复制代码
[root@tcloud ~]#  hive
## 查看数据库
hive> show databases;
OK
default
Time taken: 0.331 seconds, Fetched: 1 row(s)

在 Mysql 中也能看到 Hive 创建的库和存放元数据信息的表:

至此,hive-3.1.2版本安装成功。

相关推荐
小羊没烦恼!4 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
Fuyo_11195 小时前
C++ AVL树保姆级详解:从平衡因子到四大旋转机制
java·c++·算法
Sarvartha5 小时前
Date、LocalDate、LocalTime、LocalDateTime、DateTimeFormatter类
java
阿俊-全栈开发6 小时前
LikeShop 多商户 Java 版商城微服务模块拆分与部署架构演进实践
java·微服务·架构·likeshop开源商城·多商户源码
Wang's Blog6 小时前
Java 项目实战:交友项目 - 联系人列表
java·开发语言·交友
我命由我123456 小时前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
`Levie7 小时前
MySQL-数据库服务日志管理与数据闪回
数据库·mysql
香蕉大香蕉(06敬畏市场)7 小时前
MySQL 单点详解(01)
java·数据库·mysql·面试·博客·实习
LaughingZhu7 小时前
Product Hunt 热榜 2026-10-30:Empacer、Scape、Floot in ChatGPT
java·前端·数据库·人工智能·chatgpt·notion
niucloud-admin7 小时前
NIUCLOUD PHP SAAS上门家政使用文档:服务保障
java·开发语言·php