zoukankan      html  css  js  c++  java
  • CentOS下搭建Hive

    参考:https://blog.csdn.net/sjhuangx/article/details/82217306

    版本:hive-3.1.1

    下载解压hive

    镜像地址:http://mirror.hust.edu.cn/apache/hive/hive-3.1.1/

    # 下载
    wget http://mirror.hust.edu.cn/apache/hive/hive-3.1.1/apache-hive-3.1.1-bin.tar.gz
    
    # 解压到指定路径
    tar -xzvf apache-hive-3.1.1-bin.tar.gz -C /home/cjp/app/
    

    mysql驱动

    参考:https://www.cnblogs.com/thisyan/p/9609497.html

    从官网下载驱动jar包https://dev.mysql.com/downloads/connector/j/5.1.html

    解压:unzip mysql-connector-java-5.1.47.zip

    复制到hive的lib:cp mysql-connector-java-5.1.47-bin.jar ~/app/apache-hive-3.1.1-bin/lib/

    配置文件

    hive-env.sh

    # 先从模版中复制出配置文件
    cat hive-env.sh.template >> ~/hadoop/app/hive-1.1.0-cdh5.7.0/conf/hive-env.sh
    
    # 路径配置
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre
    export HADOOP_HOME=/home/cjp/app/hadoop-3.2.0
    export HIVE_HOME=/home/cjp/app/apache-hive-3.1.1-bin
    export HIVE_CONF_DIR=$HIVE_HOME/conf
    export HIVE_AUX_JARS_PATH=$HIVE_HOME/lib/*
    

    hive-site.xml

    # 先从模版中复制出配置文件
    cp -r  hive-default.xml.template  hive-site.xml 
    

    主要是配置mysql的关联

    /home/cjp/app/apache-hive-3.1.1-bin/tmp
    在文件添加如下内容:
    相关:https://blog.csdn.net/wodedipang_/article/details/72718138
      <property>
            <name>system:java.io.tmpdir</name>
            <value>/home/cjp/app/apache-hive-3.1.1-bin/tmp</value>
      </property>
      <property>
            <name>system:user.name</name>
            <value>${user.name}</value>
      </property>
    
    
    # 驱动配置 使用vim查找修改
    <property>
            <name>javax.jdo.option.ConnectionURL</name>
            <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</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>123456</value>
    </property>
    
    

    首次启动hive

    解决完以下问题后,直接到hive的bin目录下启动hive

    [cjp@centos bin] ./hvie
    

    使用schemaTool初始化mysql数据库

    [cjp@centos bin] ./schematool -dbType mysql -initSchema
    

    错误总结

    • jar冲突

      ​ 参考:https://www.cnblogs.com/Jesse-Li/p/7809485.html

      ​ 以下两jar包冲突,这两个版本的hadoop和hive的库都带了,删掉一个就好

      ​ /home/cjp/app/hadoop-3.2.0/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar

      ​ /home/cjp/app/apache-hive-3.1.1-bin/lib/slf4j-log4j12-1.7.25.jar

      新增问题:删除hadoop的jar后,虽然全部启动成功的,但hadoop还是报了一个错误,似乎slf4j在hadoop下是用于记录日志的。

      SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
      SLF4J: Defaulting to no-operation (NOP) logger implementation
      SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
      

      尝试删除hive下面包,保留hadoop的,最后没有问题了!

    • 配置文件非法字符

      ​ 参考:https://www.colabug.com/3924983.html

    警告汇总

    • ssh安全警告

      参考https://blog.csdn.net/u012922838/article/details/73291524

      设置useSSL=false这里有个坑 就是hive的配置文件是.XML格式,而在xml文件中&amp;才表示&,所以正确的做法是在Hive的配置文件中,如hive-site.xml进行如下设置

      <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false</value>
      
    • hbase的支持

      暂未解决,并不影响

  • 相关阅读:
    [Usaco2005 open]Expedition
    舞会
    双栈维护之--Hdu4699 editor
    利用两个堆来维护第K大之Poj3784 Running Median
    Zju1061Web Navigation 网络导航
    Qsort求静态的第K大
    BZOJ2726【SDOI2012】任务安排(斜率优化Dp+二分查找)
    P2365 任务安排 斜率优化入门
    任务处理--斜率优化Dp入门
    结构体排序教学
  • 原文地址:https://www.cnblogs.com/stream886/p/10489639.html
Copyright © 2011-2022 走看看