Hive3.1.2安装教程

  • 前言
  • 初始准备
  • 安装Hive的具体步骤
    • 1、下载hive安装包
    • 2、解压
    • 3、添加Hive核心配置,选择远程MySQL模式
    • 4、下载连接MySQL的驱动包到hive的lib目录下
    • 5、在MySQL上创建Hive的元数据存储库
    • 6、执行Hive的初始化工作
    • 7、验证初始化是否成功
    • 8、使用hive
    • 9、使用beeline

前言

在上篇《Spark集群搭建超详细教程》提到了Hive安装,那么今天就带领大家进行Hive的安装,闲言少叙,撸起袖子加油干!

初始准备

还是需要准备3台虚拟机,并且还需要做如下准备工作:

  1. 需要安装好java 运行环境 JDK
  2. 需要搭建配置好Hadoop集群并启动,如果有不熟悉Hadoop集群搭建的朋友,可以参考我的另一篇文章《Hadoop集群搭建配置教程》
  3. hadoop1这个虚拟机节点上安装MySQL服务,可以参考《Ubuntu18.04 MySQL5.7 安装步骤详解》

安装Hive的具体步骤

1、下载hive安装包

cd /opt/module
# 下载hive安装包
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz

2、解压

tar -zxvf apache-hive-3.1.2-bin.tar.gz
mv apache-hive-3.1.2-bin hive

3、添加Hive核心配置,选择远程MySQL模式

cd /opt/module/hive/conf
vim hive-site.xml

添加如下内容:

<property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://hadoop1:3306/hivedb?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;useSSL=false&amp;serverTimezone=GMT</value>
</property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.cj.jdbc.Driver</value>
</property><!-- 修改为你自己的Mysql账号 -->
<property><name>javax.jdo.option.ConnectionUserName</name><value>root</value>
</property><!-- 修改为你自己的Mysql密码 -->
<property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value>
</property><!-- 忽略HIVE 元数据库版本的校验,如果非要校验就得进入MYSQL升级版本 -->
<property><name>hive.metastore.schema.verification</name><value>false</value>
</property><property> <name>hive.cli.print.current.db</name><value>true</value>
</property><property> <name>hive.cli.print.header</name><value>true</value>
</property><!-- hiveserver2 -->
<property><name>hive.server2.thrift.port</name><value>10000</value>
</property><property><name>hive.server2.thrift.bind.host</name><value>hadoop1</value>
</property>

4、下载连接MySQL的驱动包到hive的lib目录下

cd /opt/module
# 下载MySQL驱动包
wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.17/mysql-connector-java-8.0.17.jar

5、在MySQL上创建Hive的元数据存储库

create database hivedb;

6、执行Hive的初始化工作

cd /opt/module/hive/bin
./schematool -initSchema -dbType mysql

7、验证初始化是否成功

初始化完成后,在MySQLhivedb数据库中查看是否初始化成功:

# 若展示多个数据表,即代表初始化成功
show tables;

8、使用hive

# 启动hive
cd /opt/module/hive/bin
./hive
# 启动后
# 建表
create table student(id int, name string);
# 插入数据
insert into table student(1, 'abc');
# 插入成功后,查询
select * from student;

9、使用beeline

首先启动hiveserver2服务:

nohup ./bin/hiveserver2>> hiveserver2.log 2>&1 &

hiveserver2服务启动后,使用beeline客户端访问hiveserver2服务:

cd /opt/module/hive
# 进入beeline客户端
bin/beeline
# 执行连接hiveserver2操作
beeline> !connect jdbc:hive2://hadoop1:10000/default# 或者
bin/beeline -u jdbc:hive2://hadoop1:10000/default -n root

注意:hive的默认引擎为MR!!!

至此,我们就完成了Hive的安装。

安装过程中,我们可能会遇到以下问题:

  • 问题 1
    com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)
    错误原因:系统找不到这个类所在的jar包或者jar包的版本不一样系统不知道使用哪个。hive启动报错的原因是后者。
    解决办法
    1)com.google.common.base.Preconditions.checkArgument这个类所在的jar包为:guava.jar
    2)hadoop-3.1.3(路径:hadoop/share/hadoop/common/lib)中该jar包为 guava-27.0-jre.jar;而hive-3.1.2(路径:hive/lib)中该jar包为guava-19.0.jar
    3)将jar包变成一致的版本:删除hive中低版本jar包,将hadoop中高版本的复制到hivelib中。
    再次启动问题得到解决!

  • 问题2:
    Error: Could not open client transport with JDBC Uri: jdbc:hive2://hadoop1:10000/default: Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: root is not allowed to impersonate anonymous (state=08S01,code=0)

    解决办法:
    1)修改hadoop 配置文件 /opt/module/hadoop/etc/hadoop/core-site.xml
    添加如下内容:

    <property>     <name>hadoop.proxyuser.root.hosts</name>     <value>*</value> </property>
    <property>     <name>hadoop.proxyuser.root.groups</name>     <value>*</value>
    </property>
    

    然后将core-site.xml 分发到集群的其他节点。

    2)重启hadoop集群

  • 问题3:用beeline操作hive时,如何关闭打印的info日志信息?
    解决办法:
    1)在使用beeline时加入以下设置即可--hiveconf hive.server2.logging.operation.level=NONE

    2)在hive-site.xml中修改如下配置也可以禁用在beeline中显示额外信息

    <property><name>hive.server2.logging.operation.level</name><value>NONE</value><description>Expects one of [none, execution, performance, verbose].HS2 operation logging mode available to clients to be set at session level.For this to work, hive.server2.logging.operation.enabled should be set to true.NONE: Ignore any loggingEXECUTION: Log completion of tasksPERFORMANCE: Execution + Performance logs VERBOSE: All logs</description>
    </property>
    

微信公众号:扫描下方二维码 或 搜索 笑看风云路 关注

Hive安装超详细教程相关推荐

  1. 大数据平台Ambari2.7.4+HDP3.1.4安装(超详细教程)

    大数据平台Ambari2.7.4+HDP3.1.4安装(超详细教程) Ambari2.7.4+HDP3.1.4是最后一个免费版本,新版本需要授权. 因工作需要,安装大数据集群,了解到Ambari属于A ...

  2. mysql超详细教程_MySQL8.0.23安装超详细教程

    前言 最近在做一个人脸识别的项目,需要用数据库保存学生信息与前段交互. MySQL的优点 1.mysql性能卓越,服务稳定,很少出现异常宕机. 2.mysql开放源代码且无版权制约,自主性及使用成本低 ...

  3. mysql 8.0.22_最新版MySQL 8.0.22下载安装超详细教程(Windows 64位)

    前言 前几天下载安装了最新版的MySQL 8.0.22,遇到了不少问题,参考了一些方法,最终得以解决.今天将自己的安装过程记录下来,希望对各位有所帮助. 一.MySQL 8.0.22官网下载 点击进入 ...

  4. 《星露谷物语》mod安装超详细教程

    <星露谷物语>mod安装超详细教程 目录 <星露谷物语>mod安装超详细教程 1.检查自己的游戏版本 2.到n网(https://www.nexusmods.com/stard ...

  5. Git安装教程(Windows安装超详细教程)

    Git安装教程(Windows安装超详细教程)  weir_will 关注 0.9 2017.10.08 00:59* 字数 728 阅读 17955评论 8喜欢 41 2018年4月14日更新  更 ...

  6. mMySQL中触发器和游标的介绍与使用L8.0.23免安装版配置详细教程 msi安装超详细教程

    文章来源: 学习通http://www.bdgxy.com/ 普学网http://www.boxinghulanban.cn/ 智学网http://www.jaxp.net/ 一.下载MySql,安装 ...

  7. CentOS 的安装——超详细教程

    一,准备工作: 1 在安装CentOS先安装好VW ware虚拟机没有安装的可以去按照教程安装一下:虚拟机VMware的下载与安装--详细教程 2.下载好iso镜像文件 1)我准备的是CentOS-7 ...

  8. Python安装超详细教程

    本文将介绍以下几部分内容: 下载 python 安装 python 配置环境变量 python 多版本共存配置 python 编程工具推荐 一.下载 python 下载 python 点击这里 进入 ...

  9. sql server 2008 R2 安装超详细教程--win10

    洒家的电脑是win10系统所以,咱就搞一哈 win10系统安装喽.安装的是 SQL Server 2008 R2  如需获取 请 百度  哈哈. 现在 咱就开整. 弄他然后 以管理员运行..然后就开始 ...

  10. phpStrom2019 Material Theme UI 主题的安装 超详细教程

    不知道什么原因,在phpStrom插件里面搜索Material Theme UI 搜索不到该主题插件. 百度很多相关教程都是非常的模糊,最后决定自己查官方的安装教程摸索解决. 根据教程我去到jetbr ...

最新文章

  1. 山海演武传·黄道·第一卷 雏龙惊蛰 第二十二 ~ 二十四章 真龙之剑·星墟列将...
  2. 圆形坠落模拟算法设计
  3. 如何ping端口_干货 | 如何正确处理常见的8大网络故障
  4. redis作用_Redis高可用详解:持久化技术及方案选择
  5. 总结的若干关于RecursionError: maximum recursion depth exceeded问题的解决办法
  6. 第1章 ASP.NET 3.5与开发工具
  7. 总结-linux初识进程(包括cpu调度、进程创建、僵尸进程(重点)、环境变量)
  8. 海运业务常用缩略语 一
  9. 解决ubuntu中zabbix 4.2图形显示乱码
  10. wireless-tools源码分析-iwlist
  11. 计算机应用基础张宇答案,计算机应用基础电子教案教学课件作者张宇第5章自测题课件.doc...
  12. 中国省市JSON列表
  13. linux驱动下载中心,Kvaser Linux驱动程序| Linux驱动程序和SDK开发包
  14. python菜单翻译成中文_Python编辑器英文菜单的中文翻译及解释,看看吧,磨刀不误砍柴工...
  15. IBM与中国银联探索区块链技术落地应用
  16. github连接显示隐私设置错误的解决方案
  17. CSS实现文字动画效果
  18. 又一北京“假名媛”曝光,蹭吃蹭喝21天,暴露人性最真实一面
  19. python 小数乘法_TMS320C55xDSP应用系统设计
  20. UML 有几种关系图标

热门文章

  1. 自定义Qml控件:ImageButton
  2. python工时计算_七兮网络-如何根据考勤数据自动计算出员工工作时间
  3. 大学生科技立项项目申报书超详细写作规范
  4. 教你如何零基础备考公务员
  5. Python 使用Selenium 爬取Linkedin领英数据
  6. 设计模式--模板方法模式(12)
  7. python-Django 增删改和分页
  8. 手把手教你用C语言实现求质数(素数),5大方法任君挑选
  9. python3菜鸟教程100例-Python3
  10. 绿幕抠图与无绿幕抠图区别