hive安装使用
hive安装
由于以前hive没有记录安装步骤,今天正好之前安装的hive出现问题,所有重装一下hive并分享一下安装使用步骤
环境准备
hadoop安装参考这条帖子:https://blog.csdn.net/IUNIQUE/article/details/84297695
安装包下载(版本3.1.0)
链接:https://pan.baidu.com/s/1BKXQDBNV9oEM_2YlqPrf6A
提取码:z0um
下载之后,解压文件,重命名文件
cd /root/packages
tar -zxvf apache-hive-3.1.0-bin.tar.gz
mv apache-hive-3.1.0-bin hive3.1
文件配置
修改hive-env.sh
cd /root/packages/hive3.1/conf
cp hive-env.sh.template hive-env.sh
vi hive-env.sh
这个文件主要是改这两个配置:
# Set HADOOP_HOME to point to a specific hadoop install directory
#hadoop 安装目录
HADOOP_HOME=/opt/module/hadoop2.7/
# Hive Configuration Directory can be controlled by:
# hive conf目录
export HIVE_CONF_DIR=/root/packages/hive3.1/conf
修改hive-site.xml(没有该文件,请先创建)
vim hive-site.xml
整个内容复制到hive-site.xml,并根据实际情况修改mysql相关信息
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<!-- mysql用户名 -->
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<!-- mysql用户密码 -->
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<!-- mysql 连接字符串 -->
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://node03:3306/hive?createDatabaseIfNotExist=true&useSSL=false </value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>datanucleus.schema.autoCreateAll</name>
<value>true</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<!-- hive server2 ip -->
<value>node1</value>
</property>
<!--
<property>
<name>hive.metastore.uris</name>
<value>thrift://node1:9083</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>hive.metastore.local</name>
<value>false</value>
<description>this is local store</description>
</property>
-->
</configuration>
添加mysql的连接驱动包到hive的lib目录下
复制mysql jar包到lib目录
配置hive的环境变量
vi /etc/profile
export HIVE_HOME=/root/packages/hive3.1
export PATH=$PATH:$HIVE_HOME/bin
启动hive
初始化
schematool -dbType mysql -initSchema
交互方式
bin/hive
使用hive进行交互创建一个database
HiveServer2
官方推荐使用hiveserver2的这种交互方式,需要我们启动hiveserver2这个服务端,然后通过客户 端去进行连接 启动服务端
cd /root/packages/hive3.1
bin/hive --service hiveserver2
重新开一个窗口启动我们的客户单进行连接
cd /root/packages/hive3.1
bin/beeline
!connect jdbc:hive2://node1:10000
使用sql语句或者sql脚本进行交互
不进入hive的客户端直接执行hive的hql语句,使用hive -e执行
bin/hive -e "create database if not exists mytest;"
cd /root/packages/hive3.1
vi hive.sql
把要执行的sql语句,写成一个sql脚本
create database if not exists mytest;
use mytest;
create table student(id int,name string);
使用hive -f执行
hive -f /root/packages/hive3.1/hive.sql