我们之前使用的Shell方式与Hive交互只是Hive交互方式中的一种,还有一种就是将Hive启动为服务,然后运行在一个节点上,那么剩下的节点就可以使用客户端来连接它,从而也可以使用Hive的数据分析服务。

前台模式

可以使用下面的命令来将Hive启动为服务。

/root/apps/hive-1.2.1/bin/hiveserver2

后台模式

也可以用下面的命令在后台启动Hive服务。

nohup bin/hiveserver2 1>/var/log/hiveserver.log 2>/var/log/hiveserver.err &

使用beeline连接Hive

用 lsof -i:10000 查看一下 服务是否已经启动起来

我们就在amaster上使用Hive自带的beeline来连接Hive。

/root/apps/hive-1.2.1/bin/beenline

命令提示行变成如下的样子:

Beeline version 1.2.1 by Apache Hive
beeline>

使用下面的命令连接服务端:

!connect jdbc:hive2://localhost:10000

默认使用启动Hive的用户名我这里是root,密码为空,连上了。

0: jdbc:hive2://localhost:10000>

尝试执行几个命令:

show databases;

0: jdbc:hive2://localhost:10000> show databases;
+----------------+--+
| database_name  |
+----------------+--+
| default        |
| test_db        |
+----------------+--+
2 rows selected (1.651 seconds)

select * from t_test;

0: jdbc:hive2://localhost:10000> select * from t_test;
+------------+--------------+--+
| t_test.id  | t_test.name  |
+------------+--------------+--+
| 1          | 张三           |
| 2          | 李四           |
| 3          | 风凌           |
| 4          | 三少           |
| 5          | 月关           |
| 6          | abc          |
+------------+--------------+--+
LF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]Connecting to jdbc:hive2://localhost:10000/defaultEnter username for jdbc:hive2://localhost:10000/default: rootEnter password for jdbc:hive2://localhost:10000/default: ******Error: 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 root (state=,code=0)

解决方案:在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>
 

HIVE2 :beeline连接设置用户名和密码注意问题


eeline connect有几种方式,见hive-site.xml,缺省为NONE。
 <property><name>hive.server2.authentication</name><value>NONE</value><description>Expects one of [nosasl, none, ldap, kerberos, pam, custom].Client authentication types.NONE: no authentication checkLDAP: LDAP/AD based authenticationKERBEROS: Kerberos/GSSAPI authenticationCUSTOM: Custom authentication provider(Use with property hive.server2.custom.authentication.class)PAM: Pluggable authentication moduleNOSASL:  Raw transport</description></property>设置相应用户名和密码
<property>    <name>hive.server2.thrift.client.user</name>    <value>root</value>    <description>Username to use against thrift client</description>  </property>  <property>    <name>hive.server2.thrift.client.password</name>    <value>123456</value>    <description>Password to use against thrift client</description>

  </property>注意这里设置的用户要求对inode="/tmp/hive" 有执行权限,否则会出现下列问题:Connecting to jdbc:hive2://localhost:10000/default
Enter username for jdbc:hive2://localhost:10000/default: hive
Enter password for jdbc:hive2://localhost:10000/default: **
Error: Failed to open new session: java.lang.RuntimeException: org.apache.hadoop.security.AccessControlException: Permission denied: user=hive, access=EXECUTE, inode="/tmp/hive":root:supergroup:drwxrwx---at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:319)at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkTraverse(FSPermissionChecker.java:259)at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:205)at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:190)at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkPermission(FSDirectory.java:1698)at org.apache.hadoop.hdfs.server.namenode.FSDirStatAndListingOp.getFileInfo(FSDirStatAndListingOp.java:108)at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getFileInfo(FSNamesystem.java:3817)at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.getFileInfo(NameNodeRpcServer.java:1005)at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.getFileInfo(ClientNamenodeProtocolServerSideTranslatorPB.java:843)

hadoop hive 2.1.1 将Hive启动为服务相关推荐

  1. Hadoop历险记(七 Hive配置和启动hiveservice2服务)

    Hive的元数据服务 之前讲了hive的元数据,它存储着hiveSQL映射和hdfs具体文件数据的对应关系. 但是元数据存在单独的mysql中 直接将它暴露给外部是不安全的,所以hive特别增加了一个 ...

  2. Hadoop、Spark、Hbase、Hive的安装

    为什么80%的码农都做不了架构师?>>>    工作中需要使用Hadoop环境,在三节点上搭建了一套Hadoop环境,顺便做下笔记.因为机器内存较低,没有使用CDH,为保证和线上环境 ...

  3. hadoop 开启防火墙_hadoop上搭建hive

    环境 hadoop2.7.1+ubuntu 14.04hive 2.0.1集群环境namenode节点:master (hive服务端)datanode 节点:slave1,slave2(hive客户 ...

  4. Alex 的 Hadoop 菜鸟教程: 第10课 Hive 安装和使用教程

    原帖地址: http://blog.csdn.net/nsrainbow/article/details/41748863 最新课程请关注原作者博客 声明 本文基于Centos 6.x + CDH 5 ...

  5. Hadoop学习笔记(16)Hive的基本概念、Hive的下载与安装、MySQL数据库下载与安装

    一.Hive基本概念 1.Hive简介 Hive是一个基于hadoop的开源数据仓库工具,用于存储和处理海量结构化数据.它把海量数据存储于hadoop文件系统,而不是数据库,但提供了一套类数据库的数据 ...

  6. Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

    编者按:HDFS和MapReduce是Hadoop的两大核心,除此之外Hbase.Hive这两个核心工具也随着Hadoop发展变得越来越重要.本文作者张震的博文<Thinking in BigD ...

  7. 大数据学习系列之八----- Hadoop、Spark、HBase、Hive搭建环境遇到的错误以及解决方法

    大数据学习系列之八----- Hadoop.Spark.HBase.Hive搭建环境遇到的错误以及解决方法 参考文章: (1)大数据学习系列之八----- Hadoop.Spark.HBase.Hiv ...

  8. Hadoop基础教程-第12章 Hive:进阶(12.3 HiveServer2)(草稿)

    第12章 Hive:进阶 12.3 HiveServer2 12.3.1 HiveServer1 HiveServer是一种可选服务,允许远程客户端可以使用各种编程语言向Hive提交请求并检索结果.H ...

  9. Thinking in BigData(八)大数据Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

          纯干货:Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解. 通过这一阶段的调研总结,从内部机理的角度详细分析,HDFS.MapReduce.Hbase.H ...

最新文章

  1. sqlmap完成简单的sql注入
  2. java e次方_java基础知识
  3. Nhibernate 三种配置方式
  4. firefox+android+平板,Firefox模拟手机浏览器(iOS+Android) – UserAgent Switcher使用方法...
  5. 系统开发基础:UML中图的相关知识笔记(上)
  6. php获取周几,php怎么获得星期几
  7. 释放囚犯(洛谷-P1622)
  8. 最新口绑查询HTML源码
  9. Linux系统调用表:x86和x86_64
  10. python数据结构-栈(stack)
  11. 清晨一杯水,到底怎么喝才算健康?
  12. 人类再次彻底败给 AI!
  13. 大学jsp实验3include指令的使用
  14. Mp4v2实现h264+aac打包成Mp4视频文件
  15. 漫谈 Clustering (番外篇): Expectation Maximization
  16. SQL Server 2005全文索引(full text search)
  17. 机器学习的四种学习方法
  18. [UVM]UVM Register Test Sequence
  19. 桌面窗口管理器占用过高解决办法
  20. 爬虫-百度安全验证-图片旋转验证-深度学习解决方案

热门文章

  1. socket 端口和地址复用
  2. java vector_Java Vector elements()方法与示例
  3. 实训09.09:简单的彩票系统(注册信息)
  4. Java——多线程实现的三种方式
  5. 易语言 java支持_开源Java客户端可以连接易语言服务器
  6. Python3函数和代码复用
  7. CodeForces - 1152B二进制+思维
  8. linux网络编程(一)网络基础传输知识
  9. 【数字逻辑 Verilog】全面剖析数据选择器——从基础到拓展,从理论到设计的实现,从表面到本质
  10. C++强化之路之线程池开发整体框架(二)