hive 的另外一种启动方式是 hiveserver2,它是提供了一种服务,使得我们可以远程操作 hive,就像操作 mysql 一样

hiveserver1

既然有 hiveserver2,肯定有 hiveserver1,不过已经被淘汰,不多做解释,hiveserver1 的缺点是不支持并发,hiveserver2 支持

How to Configure

Configuration Properties in the hive-site.xml File

hive.server2.thrift.min.worker.threads – Minimum number of worker threads, default 5.
hive.server2.thrift.max.worker.threads – Maximum number of worker threads, default 500.
hive.server2.thrift.port – TCP port number to listen on, default 10000.
hive.server2.thrift.bind.host – TCP interface to bind to.

很容易理解,注意他们都有默认值,也就是不是必须配置

How to Start

$HIVE_HOME/bin/hiveserver2

or

$HIVE_HOME/bin/hive --service hiveserver2

参数查看

$HIVE_HOME/bin/hive --service hiveserver2 -H
Starting HiveServer2
usage: hiveserver2
-H,--help Print help information
--hiveconf <property=value> Use value for given property

Web UI for HiveServer2

端口为 10002

Beeline – Command Line Shell

hiveserver2 提供了远程操作 hive 的服务,他的客户端有两种,一种是 java、python 等编程语言,一种是本地 shell,这里只介绍 shell,编程语言会专门写一篇博客

[root@hadoop10 bin]# beeline   启动命令
Beeline version 2.3.6 by Apache Hive
beeline> !connect jdbc:hive2://hadoop10:10000  # 启动后输入该命令
Connecting to jdbc:hive2://hadoop10:10000
Enter username for jdbc:hive2://hadoop10:10000: postgres
Enter password for jdbc:hive2://hadoop10:10000: ********
Connected to: Apache Hive (version 2.3.6)
Driver: Hive JDBC (version 2.3.6)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://hadoop10:10000> show databases;
+----------------+
| database_name |
+----------------+
| default |
| hive1 |
| hive1101 |
+----------------+
3 rows selected (1.724 seconds)

1. 启动 shell 的命令是  beeline,她也是在 hive 的 bin 目录下;

2. 启动后输入命令

!connect jdbc:hive2://hadoop10:10000    【加粗的是固定的,hive2 代表数据库类型】

  // 也可以在连接时指定数据库 !connect jdbc:hive2://hadoop10:10000/hive1101  【hive1101 是数据库名】

  // 还可以指定用户名和密码  !connect jdbc:hive2://localhost:10000 user  password

3. 输入用户名、密码

  // 如果没有专门配置用户名和密码,他们分别是 关系型数据库,也就是存放元数据的数据库的 用户名和密码

  // 也可以配置用户名和密码,配置方法是在 hive 的 hive-site.xml 中加入

<property>
<name>beeline.hs2.connection.user</name>
<value>hive</value>
</property>
<property>
<name>beeline.hs2.connection.password</name>
<value>hive</value>
</property>

异常记录

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

解决方法

在 hadoop 的 core-site.xml 末尾加上

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

注意集群中每个节点都要加

以上都是简单用法,详情参考 官网

参考资料:

https://cwiki.apache.org/confluence/display/Hive/Setting+Up+HiveServer2     HiveServer2 官网

https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients?searchId=AQ9UBBKHW       HiveServer2 Clients官网

https://blog.csdn.net/u011495642/article/details/84305944  异常解决

https://blog.csdn.net/zhanglh046/article/details/78572926

Hive 教程(八)-hiveserver2的更多相关文章

  1. CRL快速开发框架系列教程八(使用CRL.Package)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  2. Laravel教程 八:queryScope 和 setAttribute

    Laravel教程 八:queryScope 和 setAttribute 此文章为原创文章,未经同意,禁止转载. Laravel Eloquent Database 直接就是按照上一节所说的那样,我 ...

  3. Hive基础之HiveServer2 JDBC的使用

    启动HiveServer2: cd $HIVE_HOME/bin 以后台方式默认端口启动HiveServer2(默认端口是10000):hiveserver2 & 以后台方式指定端口的方式启动 ...

  4. 黄聪:Microsoft Enterprise Library 5.0 系列教程(八) Unity Dependency Injection and Interception

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(八) Unity Dependency Injection and Interception 依赖注入容器Uni ...

  5. Hive 教程(九)-python with hive

    本文介绍用 python 远程连接 hive,此时需要 hive 启动 hiveserver2 服务 windows 下报如下错误 thrift.transport.TTransport.TTrans ...

  6. RabbitMQ入门教程(八):远程过程调用RPC

    原文:RabbitMQ入门教程(八):远程过程调用RPC 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.cs ...

  7. MeteoInfo-Java解析与绘图教程(八)_java解析卫星FY-4A一级产品文件(HDF举例)

    MeteoInfo-Java解析与绘图教程(八)_java解析卫星一级产品文件(HDF举例) 最近解析卫星数据遇到了一级产品,它的解析方式与之前文章说的有些不同,特此补充一下 卫星的一级产品,里面是没 ...

  8. HIVE教程

    完整PDF下载:<HIVE简明教程> 前言 Hive是对于数据仓库进行管理和分析的工具.但是不要被“数据仓库”这个词所吓倒,数据仓库是很复杂的东西,但是如果你会SQL,就会发现Hive是那 ...

  9. Hive On Spark hiveserver2方式使用

    启动hiveserver2: hiveserver2 --hiveconf hive.execution.engine=spark spark.master=yarn 使用beeline连接hives ...

随机推荐

  1. 微信小程序支持windows PC版了

    微信 PC 版新版本中,支持打开聊天中分享的小程序,开发者可下载安装微信 PC 版内测版本进行体验和适配.最新版微信开发者工具新增支持在微信 PC 版中预览小程序 查看详情 微信 PC 版内测版下载地 ...

  2. pure-ftpd搭建简单的Ubuntu FTP服务器

    Linux下的ftpd很多,Ubuntu下常用vsftpd, proftpd和pure-ftpd,当初使用的就是proftpd. 不过前两者有个致命的问题就是内码转换,它们默认使用UTF-8编码,而W ...

  3. java中线程状态

    刚开始接触java时,就觉得多线程是一个障碍,不容易理解,当时选择了跳过,不过工作一段时间后,发现这块还是需要深入研究一下的,及时平时工作中不使用多线程,但一定会使用web容器,比如tomcat,也是 ...

  4. koa 项目实战(一)创建项目

    1.安装模块 npm install koa koa-router --save npm install -g nodemon 2.入口文件 app.js const Koa = require('k ...

  5. CentOS6.4_x64配置OpenLDAP+PhpldapAdmin

    一:前言 LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP.它是基于X.500标准的,但是简单多了并且可以根据需要 ...

  6. 显示Pl/Sql Developer window list窗口

    默认情况下Window List窗口是不显示的,这十分不方便 (一)在菜单项的Tools下的Preference选项中的UserInterface中选择Option,在右边对于的Autosave de ...

  7. python sqlalchemy 进行 mysql 数据库操作

    1. 进行mysql数据库的创建,如果已经存在,就相当于进行数据库的连接操作 from sqlalchemy import create_engine from sqlalchemy.ext.decl ...

  8. 使用data_flow_ops构造batch数据集

    1. tf.unstack(number, axis=0)  表示对数据进行拆分 import tensorflow as tf import numpy as np data = np.array( ...

  9. Ironic 裸金属管理服务的底层技术支撑

    目录 文章目录 目录 底层技术支撑 DHCP NBP TFTP IPMI PXE & iPXE Cloud Init Linux 操作系统启动引导过程 底层技术支撑 PXE:预启动执行环境,支 ...

  10. 阶段3 3.SpringMVC·_03.SpringMVC常用注解_4 HiddentHttpMethodFilter过滤器

    此文只做了解!! 过滤器 ,了解即可 请求设置为post的方式 换成put的方式 浏览器模拟发送PUT请求 ,不大好模拟.顾虑器可以帮助我们发送不同的请求 过滤器会拿到这个请求 详情可以看文档,此处不 ...