beeline无密码连接hiveserver2
1、说明
#hiveserver2增加了权限控制,需要在hadoop的配置文件中配置 core-site.xml 增加以下内容:
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property> #然后要重启hadoop
2、启动hiveserver2
#后台启动,我这里对hive加了环境变量
[root@node1 ~]#nohup hiveserver2 >>/opt/hive-2.1.1/hiveserver2.log &
3、查看
[root@node1 ~]# netstat -ntlp |grep
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java
#10002端口是hiveserver2的一个web端口,可以用浏览器打开:ip:10002
[root@node1 ~]# netstat -ntlp |grep
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java
4、使用beeline连接
[root@node1 ~]# beeline
Beeline version 2.1. by Apache Hive
beeline> !connect jdbc:hive2://localhost:10000/default; #连接default库
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/hive-2.1./lib/log4j-slf4j-impl-2.4..jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/hadoop-2.7./share/hadoop/common/lib/slf4j-log4j12-1.7..jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: 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/default;
Enter username for jdbc:hive2://localhost:10000/default;: #直接回车
Enter password for jdbc:hive2://localhost:10000/default;: #直接回车
Connected to: Apache Hive (version 2.1.)
Driver: Hive JDBC (version 2.1.)
// :: [main]: WARN jdbc.HiveConnection: Request to set autoCommit to false; Hive does not support autoCommit=false.
Transaction isolation: TRANSACTION_REPEATABLE_READ
: jdbc:hive2://localhost:10000/default> show tables;
+-----------+--+
| tab_name |
+-----------+--+
+-----------+--+
No rows selected (1.408 seconds)
: jdbc:hive2://localhost:10000/default> !exit #退出
Closing: : jdbc:hive2://localhost:10000/default;
5、可能的问题
有可能用beeline连接数据库时,会报错:AccessControlException: Permission denied: user=anonymous, access=EXECUTE, inode="/tmp/hive":root:supergroup:d-wx-w
类似于以上错误;可以对hdfs上的/tmp目录加权:
[root@node1 ~]# hdfs dfs -chmod -R /tmp
我这里是自己的测试集群用的root用户,生产环境应该是普通用户,而且应该谨慎操作;
当执行sql语句时,如果报以下错误:
Error: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask.
User: root is not allowed to impersonate anonymous (state=08S01,code=1)
可以先kill掉hiveserver2,在hive-site.xml加入以下内容:
<property>
<name>hive.server2.authentication</name>
<value>NONE</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>hive.server2.enable.doAs</name>
<value>FALSE</value>
</property>
beeline无密码连接hiveserver2的更多相关文章
- 由“Beeline连接HiveServer2后如何使用指定的队列(Yarn)运行Hive SQL语句”引发的一系列思考
背景 我们使用的HiveServer2的版本为0.13.1-cdh5.3.2,目前的任务使用Hive SQL构建,分为两种类型:手动任务(临时分析需求).调度任务(常规分析需求),两者均通过我们的 ...
- 【原创】大叔经验分享(38)beeline连接hiveserver2报错impersonate
beeline连接hiveserver2报错 Error: Could not open client transport with JDBC Uri: jdbc:hive2://localhost: ...
- 用Java代码通过JDBC连接Hiveserver2
1.在终端启动hiveserver2#hiveserver2 2.使用beeline连接hive另外打开一个终端,输入如下命令(xavierdb必须是已经存在的数据库)#beeline -u jdbc ...
- linux无密码连接
先确保所有主机的防火墙处于关闭状态. 在主机A上执行如下: 1. $cd ~/.ssh 2. $ssh-keygen -t rsa -----然后一直按回车键,就会按照默认的选项将生成的密钥保存在. ...
- 通过JDBC连接HiveServer2
如果通过JDBC连接HiveServer2时提示:User: hive is not allowed to impersonate hive,需要在core-site.xml中新增如下配置: hado ...
- Python3 impyla 连接 hiveserver2
简介: 接到一个任务,需要从 hive 中读取数据,生成报表. 于是找到了官方文档:https://cwiki.apache.org/confluence/display/Hive/Setting+U ...
- beeline: 新版连接Hive server的工具
HiveServer2 支持一个新的命令行Shell,称为Beeline,它是基于SQLLine CLI的JDBC客户端.它是从 Hive 0.11版本引入的,是Hive新的命令行客户端工具.Hive ...
- Openmpi 编译安装+集群配置 + Ubuntu14.04 + SSH无密码连接 + NFS共享文件系统
来源 http://www.open-mpi.org/ 网络连接 SSH连接,保证各台机器之间可以无密码登陆,此处不展开 hosts文件如下 #/etc/hosts 192.168.0.190 mas ...
- Windows下通过SSH无密码连接Linux服务器
一.配置环境 1.本机系统:Windows 10 Pro(64位) 2.服务器:CentOS 6.10(64位) 3.SSH连接软件:SecureCRT 二.配置SSH无密码登录步骤 1.在个人PC机 ...
随机推荐
- Loj #2554. 「CTSC2018」青蕈领主
Loj #2554. 「CTSC2018」青蕈领主 题目描述 "也许,我的生命也已经如同风中残烛了吧."小绿如是说. 小绿同学因为微积分这门课,对"连续"这一概 ...
- LeetCode 232:用栈实现队列 Implement Queue using Stacks
题目: 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- 返回队列首部的元素. empty() -- 返回队列是 ...
- git commit 提交失败
git commit -m 'xxx' 报错 报错信息 当前分支:master 远程分支:gitlib.xxx error: cannot spawn .git/hooks/commit-msg: N ...
- git Filename too long
# 全局 git config --global core.longpaths true # 当前仓库 git config core.longpaths true
- ThinkPHP查询数据的时候toArray()报错解决办法
当查找不到数据时toArray()会报错,如图 解决办法:先查找数据,然后加个判断,如果有数据再转化为数组,如果没有数据就给个空值,不想代码继续往下执行就return false;
- Log4Net记录日志(mvc)
转自:http://blog.csdn.net/zhoufoxcn/article/details/2220533 感谢:柄棋先生 第一步:下载Log4Net 下载地址:http://logging. ...
- C 预处理器、头文件、文件读写
预处理器 参考链接:https://www.runoob.com/cprogramming/c-preprocessors.html 预处理器是再变异之前做的一些工作 include 包含一个源文件代 ...
- Nginx+keepalived(高可用双主模式)
Nginx+keepalived(高可用双主模式) tips:前面已经介绍了nginx+keepalived高可用主从模式,今天补充下高可用的双主模式,均可以作为主机使用 server1:192.16 ...
- 链表逆序,java实现
package com.cskaoyan.linkedlist; //反转数组 public class LinkedListDemo2 { public static Node reverse(No ...
- webpack加载css文件及其配置
webpack加载css文件及其配置 当我们写了几个css文件之后如果想要引用到html中去的话我们最开始的方式就是通过link标签将css文件导入进去,但是如果我们的css文件有很多的话,一个个的导 ...