【发布时间】:2017-11-15 07:24:33
【问题描述】:
我尝试按照此处所述设置配置单元连接:How to Access Hive via Python? 使用配置单元。与 python 3.5.2 的连接(安装在 cloudera Linux BDA 上)但 SASL 包似乎会导致问题。我在一个论坛上看到,SASL 只兼容 2.7 python。那正确吗?我错过了什么/做错了什么?
from pyhive import hive
conn = hive.Connection(host="myserver", port=10000)
import pandas as pd
错误信息
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)
【问题讨论】:
标签: python hadoop hive connection sasl