首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyhive,SASL和Python3.5

Pyhive,SASL和Python3.5
EN

Stack Overflow用户
提问于 2017-06-13 13:21:24
回答 2查看 10.4K关注 0票数 4

我试着设置一个蜂箱连接,如下所述:How to Access Hive via Python?使用hive。连接python3.5.2(安装在cloudera上),但是SASL包似乎造成了问题。我在一个论坛上看到SASL只与2.7 python兼容。是那么回事吗?我错过了什么/做错了什么?

代码语言:javascript
复制
from pyhive import hive
conn = hive.Connection(host="myserver", port=10000)
import pandas as pd

错误消息

代码语言:javascript
复制
TTransportException Traceback (most recent call last)
in ()
1 from pyhive import hive
2 #conn = hive.Connection(host="myserver", port=10000)
----> 3 conn = hive.Connection(host="myserver")
4 import pandas as pd

/opt/anaconda3/lib/python3.5/site-packages/pyhive/hive.py in init(self, host, port, username, database, auth, configuration)
102
103 try:
--> 104 self._transport.open()
105 open_session_req = ttypes.TOpenSessionReq(
106 client_protocol=protocol_version,

/opt/anaconda3/lib/python3.5/site-packages/thrift_sasl/init.py in open(self)
70 if not ret:
71 raise TTransportException(type=TTransportException.NOT_OPEN,
---> **72 message=("Could not start SASL: %s" % self.sasl.getError()))**
73
74 # Send initial response

TTransportException: TTransportException(message="Could not start SASL: b'Error in sasl_client_start (-4) SASL(-4): no mechanism available: No worthy mechs found'", type=1)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-20 14:11:07

我们(我应该说,IT团队)找到了解决方案。

packages的升级--省吃俭用(升级到0.10.0版)和PyHive (0.3.0版)--不知道为什么我们使用的版本不是最新版本。

增加了以下内容:

代码语言:javascript
复制
<property>
<name>hive.server2.authentication</name>
<value>NOSASL</value>
</property>

到Cloudera中的以下Hive配置参数:

HiveServer2高级配置段(安全阀)用于hive-site.xml Hive客户端高级配置段(安全阀),用于hive-site.xml,这样色调才能正常工作

代码语言:javascript
复制
from pyhive import hive
conn = hive.Connection(host="myserver", auth='NOSASL')
import pandas as pd
import sys

df = pd.read_sql("SELECT * FROM my_table", conn) 
print(sys.getsizeof(df))
df.head()

工作时没有问题/错误。

最好的,汤姆

票数 2
EN

Stack Overflow用户

发布于 2017-06-13 13:27:03

检查是否安装了所有依赖项:

代码语言:javascript
复制
gcc-c++
python-devel.x86_64
cyrus-sasl-devel.x86_64

(假设你在窗户上)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44522797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档