**
CentOS7 上 Hive安装&配置 超全过程
**
本文所用已有环境:VM下的CentOS 7 两台 甲机&乙机
甲:已安装Hadoop平台 & Java
乙:已安装MySQL平台 & Java
若读者未安装上述基础环境,请自行安装
写在前面:笔者的机器在文中涉及的目录结构参考,文中所有涉及目录的配置都是基于该结构,请读者实际配置属性时留意自己的目录结构
/home
⇲ /centos //用户名称
⇲ /soft
⇲ /apache-hive-2.3.6-bin //Hive的安装目录
⇲ /hadoop-2.7.3 //Hadoop的安装目录
一丶安装 Hive
-
根目录下创建soft目录
-
传输 apache-hive-2.3.6-bin.tar.gz 到 soft 目录下并解压
( apache-hive-2.3.6 文件 可以移步官网下载HIve官网
或 使用笔者分享:百度网盘链接 提取码:nbh5) -
修改环境变量,添加Hive环境变量
vi /etc/profile
#hive安装目录
export HIVE_HOME=/home/centos/soft/apache-hive-2.3.6-bin
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile //应用变量更改
- 检测Hive是否安装成功
hive --version //出现hive版本号即为成功
二丶配置 Hive
- 在目录 /soft/apache-hive-2.3.6-bin 下创建目录 tmp 来存放hive运行过程中生成的临时文件
- 启动hadoop
start-all.sh
- 在 HDFS 上创建2个文件夹
hdfs dfs -mkdir -p /root/hive
hdfs dfs -mkdir -p /root/hive/warehouse
- 进入目录 /soft/apache-hive-2.3.6-bin/conf 创建 文件 hive-site.xml
(该目录下默认没有 hive-site.xml 文件 ,该文件可以通过复制 hive 自带的文件 hive-default.xml.template 来创建)
cd /soft/apache-hive-2.3.6-bin/conf
cp hive-default.xml.template hive-site.xml
- 进入目录 /soft/apache-hive-2.3.6-bin/conf 创建 文件 hive-env.sh
(该目录下默认没有 hive-env.sh 文件 ,该文件可以通过复制 hive 自带的文件 hive-env.sh.template 来创建)
cd /soft/apache-hive-2.3.6-bin/conf
cp hive-env.sh.template hive-env.sh
-
将 mysql-connector-java-5.1.18-bin.jar 传输到 apache-hive-2.3.6-bin/lib 目录下
(mysql-connector-java-5.1.18-bin.jar 文件可以移步官网下载 MySQL官网
或 使用笔者分享:百度网盘链接 提取码:dwun ) -
启动另一台机器的 MySQL,登录root用户,更改远程权限,并创建 名称 为 hive 的 数据库
#建立数据库
create database if not exists hive;
#设置远程登录的权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
#刷新配置
FLUSH PRIVILEGES;
三丶修改 Hive 的配置文件
- 修改目录 /soft/apache-hive-2.3.6-bin/conf 下的文件 hive-env.sh
在文件中添加下列语句(注意自己的目录结构)
# 设置hadoop的安装路径
export HADOOP_HOME=/home/centos/soft/hadoop-2.7.3
# 设置hive配置文件所在路径
export HIVE_CONF_DIR=/home/centos/soft/apache-hive-2.3.6-bin/conf
# 配置hive依赖包的所在路径
export HIVE_AUX_JARS_PATH=/home/centos/soft/apache-hive-2.3.6-bin/lib
-
修改目录 /soft/apache-hive-2.3.6-bin/conf 下的文件 hive-site.xml 分别修改以下属性
#MySQL 连接属性
javax.jdo.option.ConnectionURL
javax.j