Could not start SASL: b'Error in sasl_client_start (-4) SASL(-4)
使用pyhive的时候出现了这个问题,我使用的是anaconda3。查了很多帖子都不能解决。
目前创新互联建站已为上千的企业提供了网站建设、域名、虚拟主机、绵阳服务器托管、企业网站设计、和县网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
参考:
https://blog.csdn.net/weixin_/article/details/
https://blog.csdn.net/wenjun_xiao/article/details/
https://blog.csdn.net/qq_/article/details/
https://blog.csdn.net/master_hunter/article/details/
(以上都未能解决我的问题)
反正捣鼓来捣鼓去,发现是sasl需要使用E:\YingYongRJ\Anaconda\Lib\site-packages\sasl\sasl2目录里的一些dll文件。
最后文章4给了我启示。
发现anaconda3把地址最后这个文件夹sasl2移动到了E:\YingYongRJ\Anaconda\Library\bin,导致程序读取不到位置。
用了文章2给的代码:管理员控制台粘贴代码:
FOR /F "usebackq delims=" %A IN (`python -c "from importlib import util;import os;print(os.path.join(os.path.dirname(util.find_spec('sasl').origin),'sasl2'))"`) DO (
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Carnegie Mellon\Project Cyrus\SASL Library" /v SearchPath /t REG_SZ /d "%A"
)
(anaconda2用法不一样,详细看文章2)
以上代码是在注册表里创建一个lib的搜索路径。但是还是不能用,我们还需要再改一下下:
win+R里面输入regedit
regedit里点开路径:HKEY_LOCAL_MACHINE\SOFTWARE\Carnegie Mellon\Project Cyrus\SASL Library
把SearchPath的值改为E:\YingYongRJ\Anaconda\Library\bin\sasl2就好了(注意改为自己anaconda的地址)
然后就好了okk~
网页标题:Could not start SASL: b'Error in sasl_client_start (-4) SASL(-4)
当前路径:http://myzitong.com/article/dsogeio.html