Hive安装及配置Mysql元数据库
一、Hive安装配置
1、前置准备
安装Hive前要先把Hadoop(伪分布式或集群模式)安装好,因为Hive是依赖于Hadoop运行的
2.安装Hive
下载所需版本的 Hive , 这里我下载版本为 apache-hive-2.3.0-bin.tar.gz。下载地址: http://archive.apache.org/dist/hive/
解压及重命名
# 解压到指定目录
[jiang@hadoop01 software]$ tar -zxvf apache-hive-2.3.0-bin.tar.gz -C /opt/modules/
# 重命名
[jiang@hadoop01 modules]$ mv apache-hive-2.3.0-bin hive-2.3
配置环境变量
[jiang@hadoop01 modules]$ sudo vim /etc/profile
在底下添加如下信息
export HIVE_HOME=/opt/modules/hive-2.3
export PATH=$PATH:$HIVE_HOME/bin
使得配置的环境变量立即生效
[jiang@hadoop01 modules]$ source /etc/profile
执行hive --version 查看版本
Hive 2.3.0
Git git://hw11077/Users/pxiong/Projects/backport/10/hive -r 6f4c35c9e904d226451c465effdc5bfd31d395a0
Compiled by pxiong on Thu Jul 13 22:32:59 PDT 2017
From source with checksum 6e6dbd81574fea419d3635f9cfcc08b0
有hive的版本显现,安装成功!
初始化derby数据库就可以使用了
schematool -dbType derby -initSchema
二、配置MySQL为源数据库
1、前置准备
安装好MySQL,并设置允许外部连接访问以及创建好数据库hive_metastore
2、修改Hive配置
#防止直接修改出错,先将需要配置的文件复制一份再修改
[jiang@hadoop01 ~]$ cd $HIVE_HOME/conf
[jiang@hadoop01 conf]$ cp hive-env.sh.template hive-env.sh
[jiang@hadoop01 conf]$ cp hive-log4j.properties.template hive-log4j.properties
[jiang@hadoop01 conf]$ cp hive-default.xml.template hive-default.xml
修改 hive-env.sh
,指定 Hadoop 的安装路径和 Hive 配置文件路径:
HADOOP_HOME=/opt/modules/hadoop-2.7.2
export HIVE_CONF_DIR=/opt/modules/hive-2.3/conf
修改日志文件存储路径
hive.log.dir=/opt/modules/hive-2.3/logs
默认情况下没有 hive-site.xml 这个文件,需要自己新建
[jiang@hadoop01 conf]$ vim hive-site.xml
# 添加如下信息
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.89.10:3306/hive_metastore?createDatabaseIfNotExist=true</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>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<!-- 显示数据库和表头 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
</configuration>
将 MySQL 驱动包mysql-connector-java-8.0.12.jar 拷贝到 Hive 安装目录的 lib
目录下
初始化MySQL 数据库
schematool -dbType mysql -initSchema
启动
由于已经将 Hive 的 bin 目录配置到环境变量,直接使用以下命令启动,成功进入交互式命令行后执行 show databases
命令,无异常则代表搭建成功。