hadoop搭建之hive安装
本文hive安装环境
系统:centos6.9
jdk:jdk1.8.0_201
hadoop:hadoop-2.7.2
HBase:hbase-1.2.4
zookeeper:zookeeper-3.4.9
mysql:mysql-server
hive安装版本:
apache-hive-2.1.1
mysql数据库连接安装包
mysql-connector-java-5.1.44-bin.jar
1、下载安装包
apache-hive-2.1.1-bin.tar.gz
2、将下载的安装包上传到centos6.9b并解压,重新命名为hive
3、配置环境变量(在root下)
输入命令vi /ect/profile
# Hive environment
export HIVE_HOME=/opt/modules/hive
export PATH=$HIVE_HOME/bin:$HIVE_HOME/conf:$PATH
4、source /etc/profile 生效环境变量
5、将mysql连接安装包mysql-connector-java-5.1.44-bin.jar放到hive中的lib文件下
5、修改hive配置文件,切换至目录cd /opt/modules/hive/conf,把初始化文件复制一份并改名
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp hive-log4j2.properties.template hive-log4j2.properties
cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties
6、新建hive在hdfs的缓存目录(配置文件会用到)
hadoop fs -mkdir hbase
hadoop fs -mkdir hbase/temp
7、在hive目录下,建立temp文件夹(配置文件会用到)
8、修改hive-env.sh
#hadoop这里根据你的地址
export HADOOP_HOME=/opt/modules/hadoop
export HIVE_CONF_DIR=/opt/modules/hive/conf
export HIVE_HOME=/opt/modules/hive
export HIVE_AUX_JARS_PATH=/opt/modules/hive/lib
9、在mysql数据库中新建hive数据库
10、修改hive-site.xml(文件信息比较多,用Ctrl搜索name值,修改value值即可)
配置数据库
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://主机名:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&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>用户名</value>
</property>
#配置数据库密码
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>密码</value>
</property>
#配置缓存目录:
<property>
<name>hive.metastore.warehouse.dir</name>
#刚才创建的第一个
<value>/hbase</value>
<description>
location of default database for the warehouse
</description>
</property>
<property>
<name>hive.exec.scratchdir</name>
#刚才建的第二个目录
<value>/hbase/temp</value>
<description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/<username> is created, with ${hive.scratch.dir.permission}.</description>
</property>
#配置刚才在hive建的temp文件
<property>
<name>hive.querylog.location</name>
<value>/opt/modules/hive/tmp${user.name}</value>
<description>Location of Hive run time structured log file</description>
</property>
在配置文件 hive-site.xml 里面把
{system:java.io.tmpdir}
改成 /opt/modules/hive/temp
把 {system:user.name} 改成 {user.name}
11、初始化hive,输入命令
schematool -initSchema -dbType mysql
初始化成功会有以下提示
Starting metastore schema initialization to 2.1.0
Initialization script hive-schema-2.1.0.derby.sql
Initialization script completed
12、输入命令hive,进入hive进行测试
总结:最近在学习配置的时候,对于路径的理解不是很深入,总是会出现大大小小的问题,经过练习,对于路径能熟悉很多,大多数的事情都是从不熟悉到熟悉,慢慢坚持