【问题标题】:Mongodb connectionString can't connectMongodb connectionString 连接不上
【发布时间】:2020-10-13 05:32:33
【问题描述】:

我可以使用我的用户名和密码通过 Mongodb COMPASS 进行连接,但显然我无法将其连接到我的网站。

mongodb://localhost:27017/mydb 在连接字符串中工作正常,但在地图集/在线集群中工作正常

{"connectionString":"mongodb+srv://myuser:mypass@thiscluster.azure.mongodb.net/mydb?retryWrites=true&w=majority"
    ,"secret":""}

错误:

Server listening on port 3000
Unhandled rejection MongoError: not authorized on admin to execute command { lis
tIndexes: "sessions", cursor: {  } }
    at Function.MongoError.create (C:\Users\user\Documents\GitHub\meanie\serv
er\node_modules\mongodb-core\lib\error.js:31:11)
    at queryCallback (C:\Users\user\Documents\GitHub\meanie\server\node_modul
es\mongodb-core\lib\cursor.js:212:36)
    at C:\Users\user\Documents\GitHub\meanie\server\node_modules\mongodb-core
\lib\connection\pool.js:469:18
    at processTicksAndRejections (internal/process/task_queues.js:79:11)

我正在使用MEANIE STACK BLOG

参考:云 mongodb 指南 mongodb+srv://:@thiscluster.azure.mongodb.net/?retryWrites=true&w=majority

其他参考:https://docs.mongodb.com/manual/reference/connection-string/

【问题讨论】:

  • 看起来您在 Atlas 服务器上的权限可能受到限制?您是创建用户还是其他人创建的?
  • @JoeDrumgoole 我拥有数据库的完全访问权限。我已将其设置为 dbadmin 设置以及读写。我哪里做错了?
  • 您是否连接到正确的数据库?你能发布一个在本地运行但在地图集上失败的小型独立程序吗?
  • @JoeDrumgoole 你好,我刚刚解决了,我使用的是旧版本的节点,connectionString 的 mongo+srv 无法被它解析/读取。答案贴在下面

标签: mongodb


【解决方案1】:

已解决

config.json / 节点的"connectionString" 无法使用mongo+srv://user:pw@thiscluster.mongodb.com/mydb?thisoptions 解析

我使用的节点版本是2.2 12

通过以下方式修复:

"connectionString":"mongodb://user:pass@test-shard-00-00-sample.azure.mongodb.net:27017,test-shard-00-01-sample.azure.mongodb.net:27017,test-shard-00-02-sample.azure.mongodb.net:27017/THISDB?ssl=true&replicaSet=Test-shard-0&authSource=admin&retryWrites=true&w=majority",

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-17
    • 1970-01-01
    • 1970-01-01
    • 2019-01-30
    • 2012-07-29
    • 2017-05-06
    • 2010-11-05
    • 1970-01-01
    相关资源
    最近更新 更多