centos9安装hive
时间: 2025-02-12 19:25:53 浏览: 44
### 安装 Hive 及 MySQL 配置教程
#### 准备工作
确保已成功部署 Hadoop 集群环境。对于 CentOS 9 的操作系统,建议先更新系统软件包并安装必要的依赖工具。
```bash
sudo yum update -y
sudo yum install java-1.8.0-openjdk-devel wget tar gzip -y
```
#### 下载与解压 Hive
前往 Apache 官方网站获取最新稳定版本的 Hive 发行版,并将其放置于合适位置:
```bash
cd /opt/
wget https://downloads.apache.org/hive/stable/apache-hive-x.y.z-bin.tar.gz
tar zxvf apache-hive-x.y.z-bin.tar.gz
ln -s apache-hive-x.y.z-bin hive
export PATH=$PATH:/opt/hive/bin
```
此处 `x.y.z` 应替换为实际下载的具体版本号[^1]。
#### 设置环境变量
编辑 `/etc/profile.d/hive.sh` 文件来设置 Hive 环境变量:
```bash
echo 'export HIVE_HOME=/opt/hive' | sudo tee -a /etc/profile.d/hive.sh
echo 'export PATH=$PATH:$HIVE_HOME/bin' | sudo tee -a /etc/profile.d/hive.sh
source /etc/profile.d/hive.sh
```
#### 安装 MySQL 并创建元数据存储库
按照官方文档指导完成 MySQL Server 的安装过程,启动服务并且允许其随系统自动开启:
```bash
sudo dnf module reset mysql
sudo dnf module enable mysql:8.0
sudo dnf install @mysql
sudo systemctl start mysqld
sudo systemctl enable --now mysqld
```
初始化安全设置并向其中导入初始 SQL 脚本以建立用于保存表结构定义和其他持久化信息的数据仓库:
```sql
CREATE DATABASE metastore;
GRANT ALL PRIVILEGES ON metastore.* TO 'hiveuser'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
USE metastore;
SOURCE /opt/hive/scripts/metastore/upgrade/mysql/hive-schema-N.M.mysql.sql; /* N.M 对应具体版本 */
```
#### 配置 JDBC 连接器
从 Maven 中央仓库或者其他可信源处获得适用于当前使用的 MySQL 版本对应的驱动程序 JAR 文件,随后复制至 `$HIVE_HOME/lib` 目录内以便加载使用:
```bash
mkdir -p $HOME/.m2/repository/mysql/mysql-connector-java/8.x.xx/
curl -o $HOME/.m2/repository/mysql/mysql-8.x.xx.jar \
"https://repo.maven.apache.org/maven2/mysql/mysql-connector-java/8.x.xx/mysql-connector-java-8.x.xx.jar"
cp ~/.m2/repository/mysql/mysql-connector-java/8.x.xx/mysql-connector-java-8.x.xx.jar $HIVE_HOME/lib/
```
修改 Hive 配置文件中的参数指向新设立好的外部关系型数据库实例地址以及认证凭证等细节事项:
```properties
# 编辑 conf/hive-site.xml 添加如下内容
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/metastore?createDatabaseIfNotExist=true&useSSL=false</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hiveuser</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
</property>
<!-- 更多配置项 -->
</configuration>
```
此时应当能够顺利运行命令验证是否一切正常运作了:
```bash
hive --service schematool -dbType mysql -initSchema
hive
```
如果没有任何错误提示,则说明整个流程顺利完成!
阅读全文
相关推荐



















