Hive 的安装与配置
1. 任务概述
本任务旨在指导大数据工程师或数据平台管理员,在Hadoop集群环境中完成Hive数据仓库组件的安装与配置。通过本任务的学习与实践,学员将掌握从环境准备、软件部署、依赖冲突解决、核心配置到服务启动的全流程技能。
核心目标:
掌握Hive在Linux环境下的安装配置与故障排查技能。
解决版本兼容性和依赖冲突的实践能力。
2. 知识目标
理解角色: 理解Hive在大数据生态系统中的角色和功能定位(基于Hadoop的数据仓库工具)。
理解依赖: 掌握Hive与Hadoop(底层存储与计算)、MySQL(元数据存储)之间的依赖关系和协同工作原理。
3. 技能目标
Linux操作: 能够熟练使用Linux命令行工具进行目录创建、文件操作和环境配置。
Hive操作: 掌握Hive服务的启动方法和基本操作命令。
4. 素质目标
问题解决: 培养在复杂软件环境中解决依赖冲突和版本兼容性问题的能力。
系统思维: 提升在Linux环境下进行大数据组件安装配置的系统性思维能力。
5. 环境要求
操作系统: CentOS (Linux操作系统)
Java环境: JDK 1.8 或更高版本
集群环境: 已部署的Hadoop集群
数据库: MySQL
6. 任务实施步骤
6.1 准备Hive安装环境
上传安装包: 将Hive安装包(如 apache-hive-3.1.2-bin.tar.gz)和MySQL驱动jar包上传至 /opt/packages/ 目录

6.2 解压与部署Hive
进入到/opt/packages/目录下,输入以下命令解压安装包到/opt/programs目录下:
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/programs/

进入到/opt/programs/下,重命名目录为apache-hive,输入以下命令:
mv apache-hive-3.1.2-bin /opt/programs/apache-hive
6.3 解决依赖冲突
处理Guava库冲突: 删除Hive自带的旧版Guava,复制Hadoop兼容的新版。
1. 删除旧版,进入/opt/programs/apache-hive/lib/目录下,输入以下命令:
rm -rf guava-19.0.jar
2. 复制新版,确认Hadoop的版本和路径,进入到/opt/module/hadoop-3.1.3/share/hadoop/common/lib/目录下,将guava-27.0-jre.jar 复制到 /opt/programs/apache-hive/lib/目录,并改名为:guava-27.0.jar,输入以下命令:
cp guava-27.0-jre.jar /opt/programs/apache-hive/lib/guava-27.0.jar
进入到/opt/programs/apache-hive/lib/目录下,处理日志包冲突:备份或移除冲突的日志jar包。
mv log4j-slf4j-impl-2.10.0.jar log4j-slf4j-impl-2.10.0.jar.bak
6.4 配置Hive环境变量
编辑系统配置文件profile,该文件在etc目录下:
添加以下配置:
HIVE_HOME
export HIVE_HOME=/opt/programs/apache-hive
export HIVE_CONF_DIR=$HIVE_HOME/conf
export PATH=PATH:JAVA_HOME/bin:HADOOP_HOME/bin:HADOOP_HOME/sbin:$HIVE_HOME/bin

使配置生效:
source /etc/profile
6.5 配置Hive核心参数
进入到cd /opt/programs/apache-hive/conf/目录下,创建并编辑 hive-site.xml 文件,或者用远程工具创建:
vi hive-site.xml
添加以下核心配置(请根据您的环境修改IP、端口和密码):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- 元数据库连接地址 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.47.201:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<!-- JDBC驱动 -->
<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>123456</value>
</property>
<!-- Hive Metastore服务地址 -->
<property>
<name>hive.metastore.uris</name>
<value>thrift://master:9083</value>
</property>
</configuration>

注意:请删除中文注释,如图。
6.6 配置数据库连接
进入到/opt/packages/目录下,复制MySQL驱动jar包到/opt/programs/apache-hive/lib/目录下:
cp mysql-connector-java-5.1.32-bin.jar /opt/programs/apache-hive/lib/
6.7 初始化元数据库
执行初始化命令:
schematool -dbType mysql -initSchema

验证初始化结果: 观察输出信息,确认成功。
在MySQL中验证。
mysql -u root -p123456 -e "show databases;"

(应能看到名为 hive 的数据库)
6.8 启动与验证Hive服务
启动Hadoop集群(三台机器):
输入启动命令
启动Hive元数据服务(Metastore): (后台运行)
hive --service metastore &
说明: 必须先启动元数据服务,客户端才能成功连接并操作元数据库。

进入Hive命令行界面:
hive
验证安装: 执行基本命令,查看数据库列表。
show databases;
预期效果: 成功进入 hive> 提示符,并看到 default 数据库。

恭喜你,学会了Hive的安装与配置!!!