参考: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的支持

    暂未解决,并不影响

CentOS下搭建Hive的更多相关文章

  1. Linux 下搭建 Hive 环境

    Linux 下搭建 Hive 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 Hive 环境 CSDN:Linux 下搭建 Hive 环境 前置工作 首先,需要先完成 Linux 下搭建 ...

  2. CentOS下搭建LAMP环境详解

    前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...

  3. Centos下搭建 nginx+uwsgi+python

    python做web应用最麻烦的还是配置服务器了,此话不假,光中间件就有好几种选择,fastcgi.wsgi.uwsgi,难 免让人眼花缭乱. 而听说uwsgi的效率是fastcgi和wsgi的10倍 ...

  4. CentOS下搭建LNMP+WordPress+http2.0教程

    此文是本人CentOS下搭建WordPress的一些笔记,环境搭建时间::将看过的几篇文章总结下来,形成一条龙长文.不用大家再找来找去. 本文大概分为此几部分: 一.基础命令更新: 二.服务器加速(非 ...

  5. 在CentOS下搭建Android 开发环境

    在CentOS下搭建Android 开发环境 目录 1.环境搭建 1.1.JDK安装 1.2.Eclipse安装 1.3.ADT安装 1.4.Android SDK安装 1.5.Android NDK ...

  6. centos下搭建python双版本环境

    目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...

  7. Centos下搭建LAMP+PHP

    Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管 ...

  8. Centos下搭建DNS域名解析服务器

    Centos下搭建DNS域名解析服务器 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域 ...

  9. centos 下 搭建 php 环境

    本文详细阐述在 Linux 系统中搭建 PHP 环境,由于 PHP 就是由 C 语言编写的,最初也是运行在 Linux 系统中,所以Linux 是 PHP 的最佳环境. 关于本文中使用到的软件,请点击 ...

随机推荐

  1. Python2.7-io

    io 模块,用于处理流数据,在 python2 下,是内置 file 对象的另一种选择,在 python3 下,此模块是默认的文件和流数据的接口. 1.模块继承关系 IOBase--RawIOBase ...

  2. Vue复选框的全选

    <!DOCTYPE html><html>    <head>        <meta charset="utf-8">      ...

  3. odoo方法

    一. 类似于前面有个_ 的方法,格式是如下def _getdlvqty(self, cr, uid, ids, field_names, args, context=None): def _get_p ...

  4. 2017-2018-2 《网络对抗技术》20155322 Exp8 web基础

    [-= 博客目录 =-] 1-实践目标 1.1-实践介绍 1.2-实践内容 1.3-实践要求 2-实践过程 2.1-Web前端HTML 2.2-Web前端javascipt 2.3-Web后端 2.4 ...

  5. 滚动条ScrollViewer防止滚动时按内容跳跃式滚动的设置

    原文:滚动条ScrollViewer防止滚动时按内容跳跃式滚动的设置 属性中将CanContentScroll设置为False,滚动时就不会跳了,会连续的滚动

  6. jdbc获取blob类型乱码

    一.使用场景: mysql数据库字段类型为longblob,在数据库里看中文字符正常,java读取字串的时候发现中文乱码 使用到了activeMq 二.排查: (1)修改eclipse的环境编码为ut ...

  7. Hadoop日记Day5---HDFS介绍

    一.HDFS介绍 1.1 背景 随着数据量越来越大,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式 ...

  8. CSS 中 calc() 函数用法

    CSS calc() 函数 calc() 函数用于动态计算长度值. 注意,运算符前后都需要保留一个空格,例如:width: calc(100% - 10px): 任何长度值都可以使用calc()函数进 ...

  9. [HNOI2018]转盘[结论+线段树]

    题意 题目链接 分析 首先要发现一个结论:最优决策一定存在一种 先在出发点停留之后走一圈 的情况,可以考虑如下证明: 如果要停留的话一定在出发点停留,这样后面的位置更容易取到. 走超过两圈的情况都可以 ...

  10. 使用Python实时获取cmd的输出

    最近发现一个问题,一个小伙儿写的console程序不够健壮,监听SOCKET的时候容易崩,造成程序的整体奔溃,无奈他没有找到问题的解决办法,一直解决不了,可是这又是一个监控程序,还是比较要紧的,又必须 ...