gpt4 book ai didi

mongodb - 使用 mongodb+srv 配置 Mongo

转载 作者:行者123 更新时间:2023-12-04 18:27:47 27 4
gpt4 key购买 nike

我在 docker 上启动 mongo,所以默认主机:localhost ,端口:27017 ,用户名:root密码:example
现在我想通过连接字符串进行连接:mongodb+srv://root:example@localhost/sim但我收到一条错误消息:

Caused by: com.mongodb.MongoConfigurationException: Unable to look up TXT record for host localhost



在我的主机文件中,我有:
127.0.0.1       localhost
127.0.0.1 _mongodb._tcp.localhost

Mongo 在 docker 上运行:
Docker ps
mongo "docker-entrypoint.s…" 13 days ago Up 3 hours 0.0.0.0:27017->27017/tcp

Ubuntu 18.04

最佳答案

为了使用 mongodb+srv 方案,您将需要几个 DNS 条目:

  • 每个 mongod 节点的正向查找主机 (A) 条目
  • 集群的 TXT 记录
  • 集群的 SRV 记录

  • 当您添加 127.0.0.1 _mongodb._tcp.localhost这实际上是一个主机记录。
    SRV 记录的内容应指明提供服务的节点的几条信息,包括端口号和主机名。
    RFC 2782SRV record在维基百科上。
    MongoDB 副本集的 SRV 记录可能如下所示:
    _mongodb._tcp.mycluster.mydomain.com. 60 IN SRV 0 0 27017 mongohost1.mydomain.com.
    _mongodb._tcp.mycluster.mydomain.com. 60 IN SRV 0 0 27017 mongohost2.mydomain.com.
    _mongodb._tcp.mycluster.mydomain.com. 60 IN SRV 0 0 27017 mongohost3.mydomain.com.
    TXT 记录应指示连接字符串的 URI 选项,例如 "authSource=admin&replicaSet=myreplset" .
    请注意 ssl=true没有明确指定,但在 SRV 方案中隐含。
    这个 blog post一位 MongoDB 开发人员在引入该功能时可能会很有用。

    关于mongodb - 使用 mongodb+srv 配置 Mongo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60376489/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com