在Rocky Linux9.8系统上安装Hive
注意:在hadoop安装完并且启动之后才能安装hive(hadoop的安装可以看¥3346发布的第一篇文章呦)
目录
一、安装MySQL
1. 安装wget
2. 添加MySQL官方YUM仓库
3. 导入GPG公钥(解决报错关键步骤)
4. 安装MySQL8.0
5. 启动并设置开机自启
6. 获取初始临时密码
7. 运行安全初始化向导
8. 在MySQL中创建数据库和用户
二、安装hive
1. 下载并解压 Hive 3.1.3
2. 配置环境变量
3. 配置 Hive 元数据存储
(1)下载驱动
(2) 下载3.x版本的依赖包
(3)修改hive-site.xml
4. 解决hive与hadoop之间的依赖库版本冲突
5. 初始化元数据库
6.启动hive
要求:
Java版本:jdk1.8+
Hadoop版本:3x
mysql版本:8.0x
hive版本:3x
双节点:
|
机器名 |
IP地址 |
|
Master |
192.168.200.10 |
|
Slave1 |
192.168.200.11 |
一、安装MySQL
1.安装wget
#首先,确保系统中安装了wget工具,用于下载文件。
dnf install -y wget

2.添加MySQL官方YUM仓库
#下载并安装MySQL提供的仓库RPM包,这会将MySQL的软件源信息添加到您的系统中。
cd /tmp
wget https://dev.mysql.com/get/mysql80-community-release-el9-1.noarch.rpm
rpm -ivh mysql80-community-release-el9-1.noarch.rpm

3.导入GPG公钥(解决报错关键步骤)
#MySQL 在近年更新了其软件包的签名密钥。为了防止在安装时出现GPG check FAILED错误,请提前导入新的GPG公钥。
rpm –import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
rpm –import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023
#导入后,更新 DNF 缓存:
dnf clean all
dnf makecache

4.安装MySQL8.0
#现在可以开始安装MySQL服务器了。此命令将自动从官方仓库安装最新稳定版的MySQL8.0及其所有依赖。
dnf install -y mysql-community-server

5.启动并设置开机自启
#安装完成后,启动MySQL服务,并设置为开机自动启动。
systemctl enable mysqld
systemctl start mysqld
systemctl status mysqld

6.获取初始临时密码
#MySQL在首次启动时会生成一个root用户的临时密码,您需要从日志文件中找到它
grep 'temporary password' /var/log/mysqld.log
#请务必将引号内的临时密码复制保存下来,下一步会用到。

7.运行安全初始化向导
#使用上一步获取的临时密码,运行安全配置脚本来设置 root 新密码并加固数据库。
mysql_secure_installation
#执行该命令后,系统会提示您输入临时密码。之后,它会引导您完成以下操作:
#(1)设置新的root密码:MySQL8.0对密码强度有要求,请设置一个符合#要求的强密码。
#(2)移除匿名用户:建议选择 Y。
#(3)禁止root远程登录:建议选择 Y。
#(4)移除测试数据库:建议选择 Y。
#(5)重新加载权限表:选择Y以使上述更改立即生效。

8.在MySQL中创建数据库和用户
mysql -uroot -p
CREATE DATABASE hive_metastore CHARACTER SET utf8mb4;
CREATE USER 'hiveuser'@'%' IDENTIFIED WITH mysql_native_password BY 'your_password';
GRANT ALL PRIVILEGES ON hive_metastore.* TO 'hiveuser'@'%';
FLUSH PRIVILEGES;

二、安装hive
-
下载并解压 Hive 3.3
wget https://archive.apache.org/dist/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gzsudo tar -zxvf apache-hive-3.1.3-bin.tar.gz -C /usr/local/
cd /usr/local/
sudo mv apache-hive-3.1.3-bin hive

-
配置环境变量
vi /etc/profile
export HIVE_HOME=/usr/local/hive
export PATH=$HIVE_HOME/bin:$PATHsource /etc/profile

-
配置 Hive 元数据存储
(1)下载驱动
wget https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.3.0/mysql-connector-j-8.3.0.jar
mv mysql-connector-j-8.3.0.jar /usr/local/hive/lib/
(2)下载3.x版本的依赖包
wget https://repo1.maven.org/maven2/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar
mv commons-collections-3.2.2.jar /usr/local/hive/lib/

(3)修改hive-site.xml
vi /usr/local/hive/conf/hive-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!– jdbc连接的URL –>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive_metastore?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC</value>
</property>
<!– jdbc连接的Driver–>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
<!– jdbc连接的username–>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!– jdbc连接的password –>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>mysql密码</value>
</property>
<!– Hive默认在HDFS的工作目录 –>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
</configuration>
#注意:标红的地方根据自己设置的新密码来

-
解决hive与hadoop之间的依赖库版本冲突
cd /usr/local/hive/lib
rm guava-19.0.jar
cp /usr/local/src/hadoop-3.4.3/share/hadoop/common/lib/guava-32.0.1-jre.jar .
rm -f guava-19.0.jar
-
初始化元数据库
schematool -dbType mysql -initSchema


6.启动hive
hive










