zoukankan      html  css  js  c++  java
  • CentOS7 Hive 安装

    hive的安装模式有2种,一种是使用自带的derby数据库,另一种是使用mysql作为元数据库。derby方式一般没人用,因为它是单用户模式。这里主要讲解mysql方式。

    hive仅仅是一个客户端工具,不存在集群概念,因此安装的时候无需每台机器安装,哪个节点需要使用,就安装在哪个节点上。多个节点安装的时候mysql的元数据库一定要相同(即要在同一个mysql同一个库上),否则各个客户端获取的数据不一致

    安装前准备
    • 保证 hadoop 正常运行
    • 保证 mysql 正常运行
    CentOS7 hadoop安装教程:
    CentOS7 mysql 安装教程:https://www.cnblogs.com/caoxb/p/9405323.html 

    hive安装步骤

     
    1.下载
    我这里将hive里安装到 /usr/local 目录下
    $ cd /usr/local
    2.解压
    $ tar -zxvf apache-hive-2.3.5-bin.tar.gz 
     
     
    3.修改配置文件
    主要有两个配置文件要进行修改:hive-default.xml 和 hive-site.xml 。在hive安装的conf目录下,没有这两个配置文件,只有一个"hive-default.xml.template",所以我们要复制一个"hive-default.xml.template",命名为hive-default.xml,及新建一个文件hive-site.xml。
     
    $ cd apache-hive-2.3.5-bin/conf
    $ cp hive-default.xml.template hive-default.xml
    $ vim hive-site.xml
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
        <!-- ########################### hive的 JDBC连接 ############################ -->
        <!-- mysql 连接用户名 -->
        <property>
            <name>javax.jdo.option.ConnectionUserName</name>
            <value>caoxiaobo</value>
        </property>
        <!-- mysql 连接密码 -->
        <property>
            <name>javax.jdo.option.ConnectionPassword</name>
            <value>Caoxiaobo0917!</value>
        </property>
        <!-- mysql 连接URL 如果hive和mysql在同一服务器上,使用localhost -->
        <property>
            <name>javax.jdo.option.ConnectionURL</name>
            <value>jdbc:mysql://localhost:3306/myhive</value>
        </property>
        <!-- mysql 连接驱动 -->
        <property>
            <name>javax.jdo.option.ConnectionDriverName</name>
            <value>com.mysql.jdbc.Driver</value>
        </property>
    
    </configuration>

    备注:hive-default.xml用于保留默认配置,hive-site.xml用于个性化配置,可覆盖默认配置

    4.添加驱动包
    将mysql的驱动包放在hive安装的lib目录下
    备注:如果不添加驱动包的话,下执行初始化的时候会抛出 Underlying cause: java.lang.ClassNotFoundException : com.mysql.jdbc.Driver 异常。
    (1)下载mysql驱动jar包
    我这里是在阿里云maven库下载的
     (2)上传jar包到hive的安装的lib目录下
    这里我使用的是gitbash上传的,也可以使用其它上传工具
    $ scp -r /c/Users/96492/Desktop/mysql-connector-java-5.1.6.jar root@192.168.38.41:/usr/local/apache-hive-2.3.5-bin/lib
    5.初始化元数据库
    hive 1.0版本不需要初始化元数据库。
    $ ./schematool -dbType mysql -initSchema
    $ ./schematool -dbType mysql -initSchema
    ....
    SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
    SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
    Metastore connection URL:        jdbc:mysql://localhost:3306/myhive
    Metastore Connection Driver :    com.mysql.jdbc.Driver
    Metastore connection User:       caoxiaobo
    Starting metastore schema initialization to 2.3.0
    Initialization script hive-schema-2.3.0.mysql.sql
    Initialization script completed
    schemaTool completed

    6.配置hive环境变量

    $ vim /etc/profile  

    末尾添加如下内容:

    export HIVE_HOME=/usr/local/apache-hive-2.3.5-bin
    export PATH=$PATH:$HIVE_HOME/bin

    使环境变量生效:

    $ source /etc/profile 

    7.启动hive
    直接使用hive命令就可以启动。
    $ hive
     
     
    8.测试
    hive启动成功后就会出现 hive> 这个符号,我们就可以开始测试hive了
    hive> create database test;        # 创建test数据库
    OK
    Time taken: 0.069 seconds
    hive> use test;                    # 进入test数据库
    OK
    Time taken: 0.068 seconds
    hive> create table tt(id int);    # 创建表 tt
    OK
    Time taken: 1.886 seconds
    hive> show tables;                # 查看test库中所有的表
    OK
    tt
    Time taken: 0.093 seconds, Fetched: 1 row(s)
     
     
     
  • 相关阅读:
    K8S实战(十七)| 通过 StorageClass 实现动态卷供应
    K8S实战(十六)| 持久化存储卷
    K8S实战(十五)| 存储卷概念
    K8S实战(十四)| ConfigMap 对象
    K8S实战(十三)| Secret 对象
    K8S实战(十二)| 为 Ingress 以及后端 Nginx 增加证书
    批量删除git 本地分支、远程分支、tag
    React 页面间传值的个人总结
    搭建一个属于自己的webpack config(-)
    HTTP 2 新特性
  • 原文地址:https://www.cnblogs.com/caoxb/p/11333741.html
Copyright © 2011-2022 走看看