hive的基本介绍以及环境安装

1、hive的基本介绍

Hive是基于Hadoop的一个数据仓库工具

  • 可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。
  • 实际工作当中,一般都是使用hive来进行大规模的数据分析,hive需要依赖于hadoop集群,所以使用hive之前需要先安装好hadoop集群
  • Hive 具有 SQL 数据库的外表,但应用场景完全不同。
  • Hive 只适合用来做海量离线数据统计分析

2、hive的环境安装

注意hive就是一个构建数据仓库的工具,集群中只需要在一台服务器上安装就可以了,不需要在多台服务器上安装。

hive安装前的环境准备:

  • 搭建好Hadoop集群;
  • 其中一台服务器上先安装好MySQL服务;

1.1 先决条件

  • 搭建好Hadoop集群;
  • 其中一台服务器上先安装好MySQL服务;

1.2 准备安装包

  • 下载hive安装包

  • 规划安装目录 : /kkb/install

  • 上传安装包到目标服务器的软件存储路径下 此处使用 :/kkb/soft/

1.3 解压

  • 解压安装包到指定的规划目录/kkb/install

    [hadoop@node03 ~]$ cd /kkb/soft/
    [hadoop@node03 soft]$ tar -xzvf apache-hive-3.1.2-bin.tar.gz -C /kkb/install
    

1.4 修改配置文件

  1. 进入hive安装目录
[hadoop@node03 install]$ cd /kkb/install/
  1. 重新命名hive目录
[hadoop@node03 install]$ mv apache-hive-3.1.2-bin/ apache-hive-3.1.2
  1. 修改/kkb/install/conf目录下的hive-site.xml, 默认没有该文件, 需要手动创建
[hadoop@node03 install]$ cd /kkb/install/apache-hive-3.1.2/conf/
[hadoop@node03 conf]$ vim hive-site.xml
  1. 进入编辑模式, 文件内容如下
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
        <property>
                <name>javax.jdo.option.ConnectionURL</name>
                <value>jdbc:mysql://node03:3306/metastore?useSSL=false</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>hive.metastore.warehouse.dir</name>
                <value>/user/hive/warehouse</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionPassword</name>
                <value>123456</value>密码
        </property>
        <property>
                <name>hive.metastore.schema.verification</name>
                <value>false</value>
        </property>
        <property>
                <name>hive.metastore.event.db.notification.api.auth</name>
                <value>false</value>
        </property>
         <property>
                <name>hive.cli.print.current.db</name>
                <value>true</value>
        </property>
         <property>
                <name>hive.cli.print.header</name>
                <value>true</value>
        </property>
        <property>
                <name>hive.server2.thrift.bind.host</name>
                <value>node03</value>
        </property>
        <property>
                <name>hive.server2.thrift.port</name>
                <value>10000</value>
        </property>
</configuration>
  1. 修改日志配置文件hive-log4j.properties
  • 创建hive日志存储目录
[hadoop@node03 conf]$ mkdir -p /kkb/install/apache-hive-3.1.2/logs/
  • 重命名生成文件hive-log4j.properties
[hadoop@node03 conf]$ pwd
/kkb/install/apache-hive-3.1.2/conf
[hadoop@node03 conf]$ mv hive-log4j2.properties.template hive-log4j2.properties
[hadoop@node03 conf]$ vim hive-log4j2.properties # 修改文件
  • 修改此文件的hive.log.dir属性的值
#更改以下内容,设置我们的hive的日志文件存放的路径,便于排查问题
hive.log.dir=/kkb/install/apache-hive-3.1.2/logs/

在这里插入图片描述

1.5 拷贝mysql驱动包

  • 上传mysql驱动包,如mysql-connector-java-5.1.38.jar/kkb/soft目录中
  • 由于运行hive时,需要向mysql数据库中读写元数据,所以需要将mysql的驱动包上传到hive的lib目录下
[hadoop@node03 ~]$ cd /kkb/soft/
[hadoop@node03 soft]$ cp mysql-connector-java-5.1.38.jar /kkb/install/apache-hive-3.1.2/lib/

1.6 解决日志Jar包冲突

# 进入lib目录
[hadoop@node03 conf]$ cd /kkb/install/apache-hive-3.1.2/lib/
# 重新命名 或者直接删除
[hadoop@node03 lib]$ mv log4j-slf4j-impl-2.10.0.jar log4j-slf4j-impl-2.10.0.jar.bak

1.7 配置Hive环境变量

  • 切换到root用户下
[hadoop@node03 soft]$ su root
Password:
  • 打开/etc/profile文件
[root@node03 soft]# vim /etc/profile
  • 末尾添加如下内容
export HIVE_HOME=/kkb/install/apache-hive-3.1.2
export PATH=$PATH:$HIVE_HOME/bin
  • 切换回hadoop用户,并source
[root@node03 soft]# su hadoop
[hadoop@node03 soft]$ source /etc/profile

1.8 初始化元数据库

  1. 新建一个node03连接, 登录MySQL
# 连接MySQL, 用户名root, 密码123456
[hadoop@node03 ~]$ mysql -uroot -p123456
  1. 创建hive元数据, 需要和hive-site.xml中配置的一致
-- 创建数据库, 数据库名为: metastore
create database metastore;
show databases;
  1. 退出mysql
exit
  1. 初始化元数据库
[hadoop@node03 ~]$ schematool -initSchema -dbType mysql -verbose

在这里插入图片描述

看到schemaTool completed 表示初始化成功

1.9 验证安装

  • hadoop集群已启动
  • mysql服务已启动
  • 在node03上任意目录启动hive cli命令行客户端
[hadoop@node03 ~]$ hive  
# 启动成功之后, 警告信息可以忽略
  • 查看有哪些数据库
show databases;

在这里插入图片描述

  • 说明hive安装成功
  • 退出cli
quit;
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值