zoukankan      html  css  js  c++  java
  • centos7安装Hive2.3.0

    1、下载Hive2.3.0

    wget http://mirror.bit.edu.cn/apache/hive/hive-2.3.0/apache-hive-2.3.0-bin.tar.gz

    2、解压到指定安装目录

    tar -zxvf apache-hive-2.3.0-bin.tar.gz
    mv apache-hive-2.3.0-bin /usr/local/hive
    cd /usr/local/hive

    3、配置/etc/profile,在/etc/profile中添加如下语句

    export HIVE_HOME=/usr/local/hive
    export PATH=$HIVE_HOME/bin:$PATH

    使之生效

    source /etc/profile 

    4、安装MySQL数据库


    参考 centos7下安装mysql(yum)


    5、创建metastore数据库并为其授权

    create database metastore;
    grant all on metastore.* to hive@'%'  identified by 'hive';
    grant all on metastore.* to hive@'localhost'  identified by 'hive';
    flush privileges;

    6、 下载jdbc connector


    下载地址Connector/J 5.1.43

    下载完成之后将其拷贝至$HIVE_HOME/lib目录下

    mv mysql-connector-java-5.1.43.tar.gz $HIVE_HOME/lib

    7、修改hive配置文件

    cd /usr/local/hive/conf

    7.1复制初始化文件并重改名

    cp hive-env.sh.template hive-env.sh
    cp hive-default.xml.template hive-site.xml
    cp hive-log4j2.properties.template hive-log4j2.properties
    cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

    7.2修改hive-env.sh

    export JAVA_HOME=/usr/local/jdk1.7.0_80    ##Java路径
    export HADOOP_HOME=/usr/local/hadoop   ##Hadoop安装路径
    export HIVE_HOME=/usr/local/hive    ##Hive安装路径
    export HIVE_CONF_DIR=/usr/local/hive/conf    ##Hive配置文件路径

    7.3在hdfs 中创建下面的目录 ,并且授权

    hdfs dfs -mkdir -p /user/hive/warehouse
    hdfs dfs -mkdir -p /user/hive/tmp
    hdfs dfs -mkdir -p /user/hive/log
    hdfs dfs -chmod -R 777 /user/hive/warehouse
    hdfs dfs -chmod -R 777 /user/hive/tmp
    hdfs dfs -chmod -R 777 /user/hive/log

    7.4修改hive-site.xml

    <property>
        <name>hive.exec.scratchdir</name>
        <value>/user/hive/tmp</value>
    </property>
    <property>
        <name>hive.metastore.warehouse.dir</name>
        <value>/user/hive/warehouse</value>
    </property>
    <property>
        <name>hive.querylog.location</name>
        <value>/user/hive/log</value>
    </property>
    
    ## 配置 MySQL 数据库连接信息
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://localhost:3306/metastore?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;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>hive</value>
      </property>
      <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>hive</value>
      </property>

    7.5 创建tmp文件

    mkdir /home/hadoop/hive-2.1.1/tmp

    并在hive-site.xml中修改:

    把{system:java.io.tmpdir} 改成 /home/hadoop/hive-2.1.1/tmp/
    
    把 {system:user.name} 改成 {user.name}

    8、初始化hive

    schematool -dbType mysql -initSchema hive hive

    9、启动hive

    下面介绍有两种启动方式: 
    9.1 hive CLI

    hive

    9.2 beeline

    9.2.1 启动hiveserver2

    nohup hiveserver2 &

    9.2.2 查看hiveserver2启动状态

    netstat -nptl | grep 10000

    9.2.3 启动beeline

    beeline

    9.2.4连接hive

    !connect jdbc:hive2://localhost:10000 hive hive

    9.2.5 查看数据库

    show databases;

    10、安装时遇到的问题

    10.1 在对数据库表进行查询、插入操作时出现下列异常:

    Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main"

    原因:客户端内存不够。 
    解决方法:适当增加内存 
    在hadoop-env.sh中修改属性HADOOP_CLIENT_OPTS的值,默认值为1024MB,可以根据实际内存大小对其进行修改,我的内存为8G,所以我将其修改为4096MB

    export HADOOP_HEAPSIZE=4096

    10.2Error: Could not open client transport with JDBC Uri: jdbc:hive2://localhost:10000: java.net.ConnectException: Connection refused (state=08S01,code=0)

    原因:hiveserver2没有启动 
    解决方案:启动hiveserver2

    nohup hiveserver2 &
  • 相关阅读:
    JDK源码分析 – HashMap
    牛哄哄的celery
    redis数据库基础篇
    RPC的入门应用
    Python的常用模块
    消息队列之真知灼见
    面向对象编程(2)
    python3的C3算法
    面向对象编程(1)
    CRM项目之stark组件(2)
  • 原文地址:https://www.cnblogs.com/wpcnblog/p/8920792.html
Copyright © 2011-2022 走看看