首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rmongodb认证总是失败。

rmongodb认证总是失败。
EN

Stack Overflow用户
提问于 2015-07-27 22:59:29
回答 1查看 994关注 0票数 1

我试着用rmongodb登录,但它不认证。这是我的连接字符串:

代码语言:javascript
复制
myMongoConnection <- mongo.create(host = "<myip>",db = "geoLoc", username = "<myusername>", password = "<mypassword>")

但是,如果我在计算机上打开一个芒果壳并键入:

mongo <myip>/geoLoc -u '<myusername>' -p '<mypassword>'

连接得很好。

此外,如果我登录到服务器并通过注释:auth = true禁用身份验证,然后尝试:

myMongoConnection <- mongo.create(host = "<myip>",db = "geoLoc)"

它也很好用。这与用户名和密码有关。我不知道什么,虽然我知道他们是“正确的”,因为我可以登录他们!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-28 02:17:35

您可能正在运行服务器版本的MongoDB 3.0或更高版本( 3.x系列当前作为写入),它有一个更新的安全认证机制 (来自MONGODB的SCRA-SHA-1),与不支持它的旧驱动程序版本不兼容。

在当前的瑞香草包版本(编写版本1.8.0 )中,该驱动程序基于与新身份验证方法不兼容的遗留C驱动程序实现。正如在关于该储存库的问题中所指出的,作者注意到了这个驱动程序依赖项,并指出包需要重写才能利用支持新身份验证方法的新API。

在撰写本文时,除了建立一个目前尚未准备好发布的新分支之外,似乎还没有进行任何这样的更改。

因此,你目前的选择是:

  • 在可能的情况下无需身份验证即可工作
  • 将MongoDB服务器版本降级为支持旧身份验证的版本
  • 寻找其他支持新身份验证的驱动程序实现。

因此,"rmongodb“本身目前无法连接到MongoDB 3.x服务器。如果您能够在完全的身份验证支持下将其开发到下一个版本,那么可以应用其他选项之一和/或自己为解决方案做出贡献。

在这个问题中,其他可能的驱动程序选择会被链接或讨论。

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

https://stackoverflow.com/questions/31664719

复制
相关文章

相似问题

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