前言:
由于只是在自己的虚拟机上进行学习,所以对hive只是进行最简单的配置,其他复杂的配置文件没有配置。
1、前提
1.1 安装配置jdk1.8
1.2 安装hadoop2.x
1.3 安装mysql并配置myql允许远程访问,我的mysql版本5.7.18。
2、下载hive
下载地址:http://mirror.bit.edu.cn/apache/hive/,我下载的是apache-hive-2.3.2-bin.tar.gz。
wget http://mirror.bit.edu.cn/apache/hive/hive-2.3.2/apache-hive-2.3.2-bin.tar.gz
或者下载到本地,通过工具上传到虚拟机中
3、解压到/opt目录下(目录根据自己习惯)
tar -zxvf apache-hive-2.3.2-bin.tar.gz -C /opt/
4、配置hive环境变量
vim /etc/profile
export HIVE_HOME=/opt/apache-hive-2.3.2-bin
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile
5、配置hive
5.1 配置hive-site.xml
其中ConnectionUserName和ConnectionPassword为mysql远程访问的用户名和密码,hive_metadata为mysql数据库,随自己习惯命名。
cd /opt/apache-hive-2.3.2-bin/conf/
vim hive-site.xml
javax.jdo.option.ConnectionURL
jdbc:mysql://192.168.44.128:3306/hive_metadata?&createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false
javax.jdo.option.ConnectionUserName
root
javax.jdo.option.ConnectionPassword
Root-123456
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
datanucleus.schema.autoCreateAll
true
hive.metastore.schema.verification
false
5.2 配置hive-site.xml
cp hive-env.sh.template hive-env.sh
vim hive-env.sh
HADOOP_HOME=/opt/hadoop-2.7.5
export HIVE_CONF_DIR=/opt/apache-hive-2.3.2-bin/conf
具体位置如图:
6、加载mysql驱动(要与自己安装的mysql版本一致)
下载地址:http://dev.mysql.com/downloads/connector/j/
我下载的是:mysql-connector-java-5.1.46.tar.gz,解压并将其中的mysql-connector-java-5.1.46-bin.jar放到hive/lib下
具体路径为:/opt/apache-hive-2.3.2-bin/lib
7、初始化数据库
schematool -initSchema -dbType mysql
8、启动hive
启动hive之前先启动hadoop,不然会报Connection refused异常,在命令行jps看一下hadoop是否启动成功然后启动hive
hive
然后简单的测试:
show databases;
出现如下图所示即代表配置成功!
9、简单的hive语句测试
建表:
CREATE TABLE IF NOT EXISTS test (id INT,name STRING)ROW FORMAT DELIMITED FIELDS TERMINATED BY " " LINES TERMINATED BY "\n";
插入数据
insert into test values(1,'张三');
查询
select * from test;