我有以下用户:
{
"_id" : "admin.root",
"user" : "root",
"db" : "admin",
"roles" : [
{
"role" : "root",
"db" : "admin"
}
]
}
对于我的数据库:
{
"_id" : "mydb.mydbDbOwner",
"user" : "mydbDbOwner",
"db" : "mydb",
"roles" : [
{
"role" : "dbOwner",
"db" : "mydb"
}
]
}
我无法通过本地主机上的Robomongo进行连接。
同样适用于......
Database: mydb
User Name: root
Database: mydb
User Name: mydbDbOwner
答案 0 :(得分:27)
Robomongo 0.8.x不支持新的SCRAM-SHA-1身份验证,这是MongoDB 3.0中的默认身份验证。这是Robomongo 0.9.0版本的一部分(参见:issue #766)。
如果您使用的是默认MMAP存储引擎(而不是WiredTiger,也需要驱动程序更新),则可能会出现Robomongo问题的解决方法 - 降级为较旧的MONGODB-CR身份验证格式。
还有其他数据管理UI,其中一些已经使用MongoDB 3.0支持进行了更新。
有关替代方案,请参阅:
答案 1 :(得分:6)
我在mac上遇到了完全相同的问题。我删除了robomongo客户端并从他们的网站下载了最新版本。它只是工作:)
答案 2 :(得分:0)
您可以尝试使用Mongo-Express(基于网络的工具)。它可以在这里找到:https://github.com/andzdroid/mongo-express
但是,您需要根据以下内容将mongodb-nodejs库升级至少(1.4.29):http://docs.mongodb.org/manual/release-notes/3.0-scram/
我试过,它适合我的情况。您可以在下面找到以下有用的命令:
npm install mongo-express cd node-modules / mongo-express
将config.default.js文件更改为config.js并更新它以包含您的数据库连接(例如用户名,密码,连接的URL等)
编辑package.jon文件并将mongodb的版本更改为“~1.4.29”
运行:npm update
启动网络应用程序:执行命令“node app”,该网站将在http://localhost:8081/
提供答案 3 :(得分:0)
您可以将localhost更改为127.0.0.1
答案 4 :(得分:0)
对于那些提出这个问题的人,我刚刚升级到Robomongo的新1.0。正如这里所说的一些人所说的0.8.x并不支持SCRAM-SHA-1,这是mongodb 3.0之前版本默认的MONGODB-CR。但是从这一点开始下载Robomongo的任何人都不应该有身份验证问题。
这个底部链接更多地解释了scram-sha,如果大量使用mongodb,我建议阅读它 https://robomongo.org/
答案 5 :(得分:-1)
通过SSH隧道与Robomong连接的可能性又回到了RC8版本。见github issue