当连接字符串中指定了多个主机并且其中一个主机关闭时,MongoDB无法连接

本文关键字:主机 连接 一个 MongoDB 字符串 | 更新日期: 2023-09-27 18:28:58

我正在使用C#驱动程序连接到mongodb复制集。

连接字符串指定作为复制集一部分的所有主机:

mongodb://host1:2702,host2:2702,host3:2702,host4:2702,host5:2702/myDb

我认为复制集的想法是即使主机宕机也要保持连接。。不仅仅是为了速度。

为什么C#驱动程序试图连接到连接字符串中指定的每一个主机?我可以检查它们中哪一个是最近的(因为我为ReadConcern指定了最近的),但当它超时时,我希望它忽略该主机。

我遗漏了什么吗?

当连接字符串中指定了多个主机并且其中一个主机关闭时,MongoDB无法连接

您没有为这些服务器指定replicaSet,您可以这样指定:

mongodb://host1:2702,host2:2702,host3:2702,host4:2702,host5:2702/myDb?replicaSet=MySet