我正在尝试使用 MongoDB Compass 查看集合的内容。我已设置用户名/密码身份验证。我可以成功登录,但看不到集合中的任何文档。相反,我看到以下错误:
加载导航时发生错误:命令 hostInfo 需要身份验证。
以下是用户拥有的角色列表:
"roles" : [
{
"role" : "readWrite",
"db" : "moviesDB"
},
{
"role" : "dbAdmin",
"db" : "moviesDB"
},
{
"role" : "dbOwner",
"db" : "moviesDB"
},
{
"role" : "clusterMonitor",
"db" : "admin"
},
{
"role" : "dbAdmin",
"db" : "moviesDB"
}
]
我可以使用 mongo shell 和 node.js 驱动程序成功查询集合,但无法通过 Compass 查询。如果有人能告诉我我做错了什么,我将不胜感激。提前致谢!
答案1
我发现,通过 MongoDB 管理应用程序(例如 3T 和 Compass)出现简单身份验证问题的首要原因是未正确指定身份验证数据库。请确保您尝试登录的用户的身份验证数据库已正确设置。
除此之外,它还会从 Compass 登录设置中截取一些屏幕截图,以提供更多见解。祝你好运!