教程索引目录请访问:《大数据技术入门级系列教程》
上一篇文件我们了解了什么是 Hive,本文将带你安装和部署 Hive 体验一下这个传说中的数据仓库。
必备前提
根据上一篇的描述,Hive 是安装在 Hadoop 上面的,所以您需要先安装 Hadoop 并启动了 HDFS 和 Yarn,如果您还没有安装好 Hadoop,需要先安装好 Hadoop。
上一篇简介介绍了 Metastore,默认存储在自带的derby数据库中,我们使用MySQL存储 Metastore 元数据,所以还需要 MySQL 数据库,这里就不演示怎么安装了,请先安装好 MySQL 数据库。
Hive 的安装
下载Have并解压,我解压放到了 /opt/module/hive,然后开始修改配置文件:复制 conf/hive-env.sh.template 改名成 conf/hive-env.sh,编辑这个文件,指明 Hadoop 的文件路径和 Hive 的配置文件路径:
export HADOOP_HOME=/opt/module/hadoop-2.10.1
export HIVE_CONF_DIR==/opt/module/hive/conf
修改环境变量
修改 /etc/profile 文件,增加 Hive 的环境变量信息:
export JAVA_HOME=/opt/module/jdk1.8.0_281
export HADOOP_HOME=/opt/module/hadoop-2.10.1
export HIVE_HOME=/opt/module/hive
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin
然后执行 source /etc/profile 让环境变量生效,再执行 hive —version,看看是否执行成功。有hive的版本显现,安装成功!
Hive 元数据配置到 MySQL
我们使用 MySQL 存储 Metastore 数据,所以还需配置一下告诉 Hive MySQL 怎么连接。
驱动拷贝
想要连接 MySQL 驱动包不能少,根据你自己的 MySQL 下载驱动包,我这里是 mysql-connector-java-8.0.23.jar 复制到 /opt/module/hive/lib/ 里面。
配置Metastore到MySQL
在 hive/conf 目录下创建一个 hive-site.xml 文件,参考官方文档:https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration 写入以下内容:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://n1.renfei.net:3306/metastore?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
</configuration>
初始化
我们还需要执行初始化 Schema 的动作,执行:hive/bin/schematool -dbType mysql -initSchema,等待完成就可以了,我们看到 MySQL 中多了一个 metastore 库,并且下面还新建了很多表:

启动 Hive
启动也是非常简单的,只需要执行:bin/hive 就可以了,然后我们就可以像使用 MySQL 一样使用 SQL 来查询数据了,例如:show databases; 或者退出 quit;