• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

黄文超

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

Hive的安装

Hive的安装

1、首先明确

1、hive是一个数仓工具,只需要在一台服务器上安装就可以了,不需要在多台服务器上安装。
2、此处以服务器node03为例

2、安装hive

2.1、先决条件

1、node03上安装了mysql
2、node03在一个hadoop集群上,里面确定有hdfs服务和yarn服务

2.2、准备安装包

1、从官网下载安装包 apache-hive-3.1.2-bin.tar.gz
2、上传到node03的 /hc/soft目录下

2.3、解压

解压到指定的目录 /hc/install

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

2.4、修改配置文件

1、进入hive安装目录

[hadoop@node03 install]$ cd /hc/install/

2、重新命名hive目录

[hadoop@node03 install]$ mv apache-hive-3.1.2-bin/ apache-hive-3.1.2

3、修改/hc/install/conf目录下的hive-site.xml, 默认没有该文件, 需要手动创建

[hadoop@node03 install]$ cd /kkb/install/apache-hive-3.1.2/conf/
[hadoop@node03 conf]$ vim hive-site.xml

4、hive-site.xml内容如下

注意,这个xml的第一行不能是空行,否则后面运行会报错

<?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>

5、修改日志配置文件hive-log4j.properties

  • 创建hive日志存储目录
[hadoop@node03 conf]$ mkdir -p /hc/install/apache-hive-3.1.2/logs/
  • 重命名生成文件hive-log4j.properties
[hadoop@node03 conf]$ pwd 
输出: /hc/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的日志文件存放的路径,便于排查问题
property.hive.log.dir=/hc/install/apache-hive-3.1.2/logs/

2.5、拷贝mysql驱动包

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

2.6、解决日志Jar包冲突

# 进入lib目录
[hadoop@node03 conf]$ cd /hc/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

2.7、配置hive环境变量

1、此时如果我们就需要切换到root用户下面了

[hadoop@node03 soft]$ su root
[root@node03 soft]# vim /etc/profile

2、末尾添加内容:

export HIVE_HOME=/hc/install/apache-hive-3.1.2
export PATH=$PATH:$HIVE_HOME/bin
#让环境变量生效
[hadoop@node03 soft]$ source /etc/profile

2.8、初始化元数据

此时最好切换到你使用hdfs时候的那个用户,我的是hadoop用户

1、新建一个node03连接, 登录MySQL

# 连接MySQL, 用户名root, 密码123456
[hadoop@node03 ~]$ mysql -uroot -p123456

2、创建hive元数据, 需要和hive-site.xml中配置的一致

-- 创建数据库, 数据库名为: metastore
create database metastore;
show databases;

3、退出mysql

exit
  1. 初始化元数据库
[hadoop@node03 ~]$ schematool -initSchema -dbType mysql -verbose

看到schemaTool completed 表示初始化成功

3、验证hive是否安装成功

1、启动hadoop集群,确保hdfs和yarn已经启动

[hadoop@node03 ~]$ start-all.sh

2、在node03上启动mysql服务

[hadoop@node03 ~]$ systemctl start mysqld.service

3、在node03节点上启动hive

[hadoop@node03 ~]$ hive  
# 启动成功之后, 警告信息可以忽略
#查看数据库
show databases;
#退出
exit

posted on 2021-05-05 10:59  黄文超  阅读(445)  评论(2)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3