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.-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: row(s)
 
 
 

CentOS7 Hive 安装的更多相关文章

  1. Hive(二)CentOS7.5安装Hive2.3.3

    一 Hive的下载 软件下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/  这里下载的版本是:apache-hive-2.3.3-bin.t ...

  2. Centos7.5安装分布式Hadoop2.6.0+Hbase+Hive(CDH5.14.2离线安装tar包)

    Tags: Hadoop Centos7.5安装分布式Hadoop2.6.0+Hbase+Hive(CDH5.14.2离线安装tar包) Centos7.5安装分布式Hadoop2.6.0+Hbase ...

  3. CentOS-7.2安装Ambari-2.6.1

    CentOS-7.2安装Ambari-2.6.1 一.Ambari 是什么? Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目, ...

  4. centos7.2安装完成的基本操作

    系统是centos7.2,安装完成的基本操作 1 修改网卡为eth02 更新系统3 给/etc/rc.local添加执行权限4 添加用户hequan5 禁用selinux6 关闭防火墙安装iptabl ...

  5. Hive安装-windows(转载)

    1.安装hadoop 2.从maven中下载mysql-connector-java-5.1.26-bin.jar(或其他jar版本)放在hive目录下的lib文件夹 3.配置hive环境变量,HIV ...

  6. 一、hive安装(内置数据库derby)

    hive是一个数据仓库工具,建立在hadoop之上,它的存在是为了让大数据的查询和分析更加的方便.hive提供简单的sql查询功能,并最终转换为mapreduce任务执行. 一.环境 JDK1.8+官 ...

  7. Hive安装与配置——2.3.5版本

    Hive安装配置 Hive是一个数据仓库基础工具在Hadoop中用来处理结构化数据.它架构在Hadoop之上,提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行,使查询和分 ...

  8. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  9. 在centos7上安装Jenkins

    在centos7上安装Jenkins 安装 添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins ...

随机推荐

  1. JWT攻击手册

    JSON Web Token(JWT)对于渗透测试人员而言可能是一种非常吸引人的攻击途径,因为它们不仅是让你获得无限访问权限的关键,而且还被视为隐藏了通往以下特权的途径:特权升级,信息泄露,SQLi, ...

  2. Type Erasure with Pokemon---swift的类型擦除

    我感觉这个是swift的设计缺陷. 类型擦除:解决泛型类型作为公用类型的问题 是抽象的公用机制的一种实现方式. 1)类型擦除并不能解决类型不一致的兼容问题,只能解决类似继承一致性的兼容问题. 2)擦除 ...

  3. Java 使用Navicat连接MySQL出现2059错误

    今天使用navicat链接mysql的时候报了2059的错误,找了很久才找到解决方法,这里记录一下.出现2059这个错误的原因是在mysql8之前的版本中加密规则为mysql_native_passw ...

  4. Winform中设置ZedGraph多条Y轴时与多条曲线一一对应

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  5. xiaohacontainer, docker, windows-来自微软Azure CTO的布道

    https://azure.microsoft.com/zh-cn/blog/containers-docker-windows-and-trends/ 今天这个时代当你讨论云计算时,不谈谈docke ...

  6. 关联mysql失败_Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezon' 时区错误

    时区错误,MySQL默认的时区是UTC时区,比北京时间晚8个小时. 所以要修改mysql的时长 在mysql的命令模式下,输入: set global time_zone='+8:00'; 再次连接成 ...

  7. Python基础22

    数据类型可变不可变,说的是“指向”. 深浅拷贝.

  8. [linux] 进程五状态模型

    运行态:该进程正在执行:就绪态:进程做好了准备,只要有机会就开始执行:阻塞态:进程在某些事件发生前不能执行,如I/O 操作完成:新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中.通常是进 ...

  9. VUE注册局部组件

    // 局部组件命名规范 /* 1文件夹名大驼峰 MyLocalBtn.vue 2 使用的时候 将驼峰转化为横杠 <my-local-btn></my-local-btn> */ ...

  10. 201871010104-陈园园 《面向对象程序设计(java)》第七周学习总结

    201871010104-陈园园 <面向对象程序设计(java)>第七周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...