Hive 系列(一)安装部署
Hive 官网:http://hive.apache.org。参考手册
一、环境准备
- JDK 1.8 :从 Oracle 官网下载,设置环境变量(JAVA_HOME、PATH 和 CLASSPATH)。
- Hadoop 2.9.2 :基础平台。
- Hive 2.3.4 :Hive 是作为 Hadoop 的客户端启动的,将 Hadoop 的 SQL 封装成 MapReduce 执行。
二、Hive 安装
2.1 安装
(1) 安装
tar -xzvf hive-2.3.4.tar.gz
ln -sv /home/hadoop/soft/hive-2.3.4 /home/hadoop/hive
(2) 环境变量
#hive
export HIVE_HOME=/home/hadoop/hive
export PATH=$PATH:$HIVE_HOME/bin
下面验证是否安装成功:
hive --version
hive --help
2.2 配置
Hive 的元数据库 Mysql 方式安装配置,默认为 derby 查看其默认的配置文件 hive/conf/hive-default.xml
(1) 配置(hive/conf/hive-site.xml)
主要是配置 mysql 驱动
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
<description>password to use against metastore database</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.ConnectionURL</name>
<value>jdbc:mysql://192.168.231.1:3306/hive2</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
(2) 复制 mysql 的驱动程序到 hive/lib 下面
mysql-connector-java-5.1.18-bin.jar
(3) 在 mysql 中 hive 的 schema(在此之前需要创建 mysql 下的 hive 数据库)
hive/bin/schematool -dbType mysql -initSchema
(4) 测试
hive 默认是以 cli 的方式启动客户端,这种方式只能打开一个客户端,不支持并发访问,而且只能在服务机在访问。如果要远程并发访问则需要启动 hiveserver2 然后通过 beeline 命令行连接到 hiveserver2。
hive // hive --service cli
hive --help
$hive>create database db;
show databases;
use db;
create table db.t(id int,name string,age int);
select * from db.t;
drop table t; // 删除表
drop table db.t; // 删除表
drop database db; // 删除数据库
exit;
注意在 hive 客户端可以直接执行 hdfs dfs -lsr / 等命令
$hive>dfs -lsr /;
三、远程访问 - JDBC
hive --service cli 只能在服务器本机访问,如果要远程访问则需要需要启动 hiveserver2 然后通过 beeline 命令行连接到 hiveserver2。
# 启动 hiveserver2 服务器,监听端口 10000
hive --service hiveserver2 &
# 客户端通过 beeline 命令行连接到 hiveserver2
# 等价于 hive --service beeline
beeline
beeline>!help # 查看帮助
!quit # 退出
!connect jdbc:hive2:// # 连接到 hibve 数据(嵌入模式)
show databases;
use mydb2;
show tables;
参考:
- 《Hive安装与配置详解》:https://www.cnblogs.com/dxxblog/p/8193967.html
- 《学习Hive的元数据库Mysql方式安装配置》:https://www.cnblogs.com/biehongli/p/7693598.html
每天用心记录一点点。内容也许不重要,但习惯很重要!