Skip to content

linux下安装HIVE

配置

xml
<!--单机模式 可以提交分布式数据-->
<!--core-site.xml-->

<property>
     <name>hadoop.proxyuser.hadoop.groups</name>
    <value>*</value>
</property>
<property>
     <name>hadoop.proxyuser.hadoop.hosts</name>
    <value>*</value>
</property>
bash
# 解压 还有mysql 驱动
#
# 配置环境变量
# hive-env.sh

export HADOOP_HOME=/export/server/hadoop
export HIVE_CONF_DIR=/export/server/hive/conf
export HIVE_AUX_JARS_PATH=/export/server/hive/lib
xml
<!--新建hive-site.xml-->
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>root</value>
  </property>

  <property>
    <name>hive.server2.thrift.bind.host</name>
    <value>master</value>
  </property>

  <property>
    <name>hive.metastore.uris</name>
    <value>thrift://master:9083</value>
  </property>

  <property>
    <name>hive.metastore.event.db.notification.api.auth</name>
    <value>false</value>
  </property>
</configuration>
bash
#创建数据库
create database hive charset utf8;
#初始化
cd /export/server/hive/bin/schematool -initSchema -dbType mysql -verbos

#前台启动
bin/hive --service metastore
#后台启动
nohup bin/hive --service metastore >> logs/metastore.log 2>&1 &

#启动客户端
bin/hive

bin/hive --service hiveserver2

insert into test values(1,'钟刘扬','男');
bash
#HiveServer2
#提供协议服务 提供客户端
#内置 beeline
#三方工具 navicat DataGrip
#启动
nohup bin/hive --service hiveserver2 >> logs/hiveserver2.log 2>&1 &

netstat -anp|grep 10000
bash
/export/server/hive/bin/beeline

!connect jdbc:hive2://master:10000

beeline> !connect jdbc://hive2://master:10000 scan complete in 2ms scan complete in 2ms No known driver to handle "jdbc://hive2://master:10000" beeline> !connect jdbc:hive2://master:10000 Connecting to jdbc:hive2://master:10000 Enter username for jdbc:hive2://master:10000: hadoop Enter password for jdbc:hive2://master:10000: Connected to: Apache Hive (version 3.1.3) Driver: Hive JDBC (version 3.1.3) Transaction isolation: TRANSACTION_REPEATABLE_READ

text
[
  {
    "db_name": "myhive",
    "comment": "",
    "location": "hdfs://master:8020/user/hive/warehouse/myhive.db",
    "owner_name": "hadoop",
    "owner_type": "USER",
    "parameters": ""
  }
]
--- 

show databases;

create database if not exists myhive;

desc database myhive;

create database myhive2 location '/myhive2';

drop database myhive2 ;

drop database myhive2 cascade ;

new-单机运行

xml
#修改 hadoop core-site.xml
vim  /export/server/hadoop/etc/hadoop/core-site.xml
>>
<property>
     <name>hadoop.proxyuser.hadoop.groups</name>
    <value>*</value>
</property>
<property>
     <name>hadoop.proxyuser.hadoop.hosts</name>
    <value>*</value>
</property>

<<
下载jar
wget https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.0.32/mysql-connector-j-8.0.32.jar
mv mysql-connector-j-8.0.32.jar /export/server/hive/lib/

#创建文件
vim hive/conf/hive-env.sh
>>
export HADOOP_HOME=/export/server/hadoop
export HIVE_CONF_DIR=/export/server/hive/conf
export HIVE_AUX_JARS_PATH=/export/server/hive/lib
<<
新建hive-site.xml
vim hive/conf/hive-site.xml
>>
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>root</value>
  </property>

  <property>
    <name>hive.server2.thrift.bind.host</name>
    <value>master</value>
  </property>

  <property>
    <name>hive.metastore.uris</name>
    <value>thrift://master:9083</value>
  </property>

  <property>
    <name>hive.metastore.event.db.notification.api.auth</name>
    <value>false</value>
  </property>
</configuration>
<<
#初始化源数据库
create database hive charset utf8;
#初始化
/export/server/hive/bin/schematool -initSchema -dbType mysql -verbos
#创建log文件夹
mkdir /export/server/hive/logs
前台启动
/export/server/hive/bin/hive --service metastore
后台启动
nohup /export/server/hive/bin/hive --service metastore >> /export/server/hive/logs/metastore.log 2>&1 &


启动客户端 --记得打开hdfs 和yarn
/export/server/hive/bin/hive
#第三方连接服务
nohup /export/server/hive/bin/hive --service hiveserver2 >> /export/server/hive/logs/hiveserver2.log 2>&1 &