ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

hive部署

2022-06-20 11:37:54  阅读:162  来源: 互联网

标签:部署 hadoop hive mysql 2.3 guava data


1. 前置条件

安装hive前需先安装mysql及hadoop

a)在mysql中创建用户及数据库

create user 'hive' identified by 'hive';
grant all privileges on *.* to 'hive'@'%' with grant option;
create database hive character set latin1;

b)hadoop环境变量需要需要

/etc/profile文件中存在以下变量并加入到path中

export HADOOP_HOME=/data/hadoop

export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

2.获取hive及相关安装包

可通过清华镜像中下载,https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3.9/

a)解压缩并重命名目录

tar -zxvf apache-hive-2.3.9-bin.tar.gz
mv apache-hive-2.3.9-bin  hive-2.3.9

b)配置环境变量

vi /etc/profile

在文件末尾加入以下内容后保存退出
#HIVE_HOME
export HIVE_HOME=/data/hive-2.3.9
export PATH=$PATH:$HIVE_HOME/bin

文件使之生效
source /etc/profile

c)下载mysql jar包,将jar包放入hive lib目录下

cd /data/hive-2.3.9/lib
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.21/mysql-connector-java-8.0.21.jar

d)检查hive与hadoop中guava版本(保证hive中的guava版本大于hadoop中的版本)

ll /data/hive-2.3.9/lib/guava-*

ll /data/hadoop/share/hadoop/hdfs/lib/guava-*

若hive中的guava版本小于hadoop

cd /data/hive-2.3.9/lib/
mv guava-14.0.1.jar guava-14.0.1.jar.bak #备份
#设置软链接
ln -s /data/hadoop/share/hadoop/hdfs/lib/guava-27.0-jre.jar /data/hive-2.3.9/lib/

3.hive配置

a)创建hive数仓目录

hdfs dfs -mkdir tmp
hdfs dfs -mkdir warehouse
hdfs dfs -chmod 777 warehouse
hdfs dfs -chmod 777 tmp

b)配置conf目录中的文件

配置日志文件

cd /data/hive-2.3.9/conf/
cp hive-log4j2.properties.template hive-log4j2.properties
vim hive-log4j2.properties
#修改property.hive.log.dir目录为
property.hive.log.dir = /data/hive-2.3.9/log

cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties
vim hive-exec-log4j2.properties
#修改property.hive.log.dir目录
property.hive.log.dir = /data/hive-2.3.9/exelog

配置hive-site文件

cp hive-default.xml.template hive-site.xml
vim hive-site.xml

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
        <property>
                <name>hive.cli.print.header</name>
                <value>true</value>
                <description>Whether to print the names of the columns in query output.</description>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionURL</name>
                <value>jdbc:mysql://localhost:3306/hive</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionDriverName</name>
                <value>com.mysql.cj.jdbc.Driver</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionUserName</name>
                <value>hive</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionPassword</name>
                <value>hive</value>
        </property>
        <property>
                <name>hive.metastore.uris</name>
                <value>thrift://localhost:9083</value>
                <description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description>
        </property>
</configuration>

4.启动服务

a)初始化Metastore元信息Schema

cd /data/hive-2.3.9/bin
./schematool -initSchema -dbType mysql

b)启动metastore

nohup hive --service metastore > metastore.log &

c)登录hive客户端

 

5.beeline配置

a)配置hadoop

 cd /data/hadoop/etc/hadoop/

vim core-site.xml

<property>
     <name>hadoop.proxyuser.hadoop.hosts</name>
     <value>*</value>
   </property>
   <property>
    <name>hadoop.proxyuser.hadoop.groups</name>
    <value>*</value>
</property>

检查hdfs-site.xml文件存在以下配置

<property>
       <name>dfs.webhdfs.enabled</name>
       <value>true</value>
     </property>

重启hadoop

b)启动hiveserver2

cd /data/hive-2.3.9/bin
nohup hive --service hiveserver2 >hiveserver.log &

c)启动 beeline客户端

beeline --color=true

进入客户端,执行连接命令,其中100.86.13.xx是安装hadoop的节点ip

!connect jdbc:hive2://100.86.13.xx:10000

输入100.86.13.xx这台机器的hadoop用户名和密码

 

标签:部署,hadoop,hive,mysql,2.3,guava,data
来源: https://www.cnblogs.com/Nora-F/p/16392683.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有