【问题标题】:Mongo atlas error while connecting on digitalocean连接digitalocean时出现Mongodb atlas错误
【发布时间】:2020-09-16 12:44:04
【问题描述】:

我编辑了mongodb.conf,启用了身份验证并在 bind_ip 上插入了我的 droplet 的 ip。

当我尝试连接到mongo --host XXXX 时,它会连接但找不到我的用户或数据库。例如:

$ mongo --host
MongoDB shell 版本 v3.6.3
连接到:mongodb://hostXXXX:27017/
MongoDB服务器版本:3.6.3

db.system.users.find()
错误:错误:{
“好”:0
"errmsg":"未授权测试执行命令 {find:"system.users", filter {}, $db: "test"},
“代码”:13,
"codeName":"未授权"
}

【问题讨论】:

    标签: reactjs mongodb digital-ocean


    【解决方案1】:

    在现代版本的 MongoDB 中,“test”数据库中不会有 system.users 集合,所有用户凭据信息都存储在“admin”数据库中。

    Atlas 还限制对用户凭据信息的访问,因此您可能也无法查询该集合。

    如果需要了解当前用户,可以使用connectionStatus数据库命令。

    如果您需要以编程方式列出或管理用户,您可能会发现 API 很有用。

    【讨论】:

    • 知道了@Joe 非常有帮助。谢谢。
    • 但问题是当我尝试连接我的集群时我无法连接,因为出现警告说 shell 和服务器版本不匹配,但它们确实匹配。问题是我的 mongo shell 和服务器是 3.6,但我的集群是 4.2,这是问题所在吗?
    猜你喜欢
    • 2020-10-26
    • 2023-03-28
    • 2023-01-18
    • 2020-09-27
    • 2019-05-27
    • 2020-11-07
    • 2018-09-28
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多