【问题标题】:How can I connect to an Atlas cluster with the SRV connection string format using ReactiveMongo?如何使用 ReactiveMongo 连接到具有 SRV 连接字符串格式的 Atlas 集群?
【发布时间】:2020-07-15 10:45:33
【问题描述】:

我有一个 play scala 应用程序,并且我有一个正在尝试连接的 atlas 集群。根据ReactiveMongo,这是可能的。我可以通过

将我从 Atlas 获得的连接字符串添加到我的应用程序中

mongodb.uri

在我的 application.conf 文件中。我已经根据 reactivemongo 和 atlas db 的说明尝试了一切,但我仍然无法连接到集群。但是,使用我的 mongoshell,我可以连接并访问我的数据库,但它只是拒绝通过我的应用程序连接。 Mongo 只是返回一个错误"MongoError['No primary node is available! (Supervisor-13/Connection-14)']" } 并在我的控制台Some options were ignored because they are not supported (yet): w, retryWrites 中记录一个警告。我正在使用 scala 版本 2.12 和 reactivemongo 0.12.6 和 play 2.6。 我的连接字符串是mongodb+srv://<username>:<password>@my-cluster.abo25.mongodb.net/my-db?retryWrites=true&w=majority

任何信息或帮助将不胜感激。

【问题讨论】:

  • 验证您是否可以使用非 SRV URI 进行连接,然后在您的驱动程序中启用诊断以获得类似于 docs.mongodb.com/ruby-driver/master/tutorials/… 末尾的输出并添加到问题中。
  • 我发现了我的问题。我将在下面的答案中发布。谢谢

标签: mongodb scala reactivemongo play-reactivemongo


【解决方案1】:

解决了我的问题。事实证明,+srv 字符串格式可以从 reactivemongo 0.17 版本无缝运行,而我最初是在 0.16 上。在我升级(也升级了我的代码)之后,我能够连接到我的集群。我还发现我使用的用户凭据之一是错误的,因此升级让我启动并运行。

【讨论】:

    猜你喜欢
    • 2018-03-05
    • 2020-01-15
    • 2018-08-20
    • 2021-04-29
    • 1970-01-01
    • 2021-03-09
    • 2021-08-18
    • 2019-06-10
    • 2019-12-27
    相关资源
    最近更新 更多