HIVE安装部署
注意hive就是一个构建数据仓库的工具,只需要在一台服务器上安装就可以了,不需要在多台服务器上安装。
使用hadoop普通用户操作
前提条件
安装好对应版本的hadoop集群,并启动hadoop的HDFS以及YARN服务
hadoop02上安装了MySQL服务,并启动MySQL的服务
下载安装包
进入到/bigdata/soft目录下,使用清华大学的镜像地址下载hive安装包
wget -i -c https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
解压
##解压到/bigdata/install目录
tar -zxf apache-hive-3.1.2-bin.tar.gz -C /bigdata/install
cd /bigdata/install
## 修改文件夹名称
mv apache-hive-3.1.2-bin.tar.gz hive-3.1.2
配置
####进入到配置目录,下边查找一下是否有hive-site.xml,如果没有就创建一个
cd hive-3.1.2/conf
vi hive-site.xml
##配置一个hive-site.xml里面会有mysql相关的一些具体信息,配置如下
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://haodoop02:3306/metastore?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>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.event.db.notification.api.auth</name>
<value>false</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>hadoop02</value>
</property>
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
</configuration>
####在复制一个hive-env.sh文件,里面有hadoop相关的配置信息
####修改HADOOP_HOME的路径
# Set HADOOP_HOME to point to a specific hadoop install directory
HADOOP_HOME=/bigdata/install/hadoop-3.1.4
#####修改hive的配置路径
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/bigdata/install/hive-3.1.2/conf
####配置hive的log4j日志输出路径
mkdir -p /bigdata/install/hive-3.1.2/logs
####复制一份模板文件进行修改
cp hive-log4j2.properties.template hive-log4j2.properties
vi hive-log4j2.properties
####修改此文件的hive.log.dir属性的值
#更改以下内容,设置我们的hive的日志文件存放的路径,便于排查问题
property.hive.log.dir=/bigdata/install/hive-3.1.2/logs
配置其他项
上传mysql驱动包,如mysql-connector-java-5.1.38.jar
到/bigdata/install/hive-3.1.2/lib
目录中
由于运行hive时,需要向mysql数据库中读写元数据,所以需要将mysql的驱动包上传到hive的lib目录下
####下载mysql驱动
wget -i -c https://cdn.mysql.com/archives/mysql-connector-java-5.1/mysql-connector-java-5.1.7.tar.gz
cp mysql-connector-java-5.1.38.jar /bigdata/install/hive-3.1.2/lib
####解决日志jar包冲突,屏蔽掉自带的log4j的jar包
cd /bigdata/install/hive-3.1.2/lib
mv log4j-slf4j-impl-2.10.0.jar log4j-slf4j-impl-2.10.0.jar.bak
环境变量等配置
####切换到root用户下
su - root
####打开`/etc/profile`文件,末尾添加如下内容
export HIVE_HOME=/kkb/install/apache-hive-3.1.2
export PATH=$PATH:$HIVE_HOME/bin
####切换回hadoop用户,并source
su - hadoop
source /etc/profile
初始化元数据库
####新建一个hadoop02连接, 登录MySQL,用户名root, 密码123456
mysql -uroot -p123456
####创建hive元数据, 需要和hive-site.xml中配置的一致,数据库名为: metastore
create database metastore;
show databases;
exit;
####初始化元数据信息
schematool -initSchema -dbType mysql -verbose
(看到有schemaTool completed 表示初始化成功)
启动验证安装
hadoop集群已启动
mysql服务已启动
在hadoop02上任意目录启动hive cli命令行客户端,并执行show databases; 查看输出结果