Mongodump 失败并显示"a direct connection cant be made if multiple hosts are specified"



我有一个dev&我定期(使用mongoose.connect(<uri>)(连接到的临时数据库。

我想把它们扔掉。我使用以下语法:

mongodump --uri=<uri>

这对dev来说很好,我可以使用这个命令转储dev数据库。但是,暂存数据库会产生以下错误:

失败:无法创建会话:配置连接器时出错:如果指定了多个主机,则无法进行直接连接

有人知道或有任何见解的问题可能是什么?我没有找到任何关于这个错误的文档或帖子。

历史上,当给定一个URI,其中有一个主机(或要连接的单个主机(时,一些MongoDB驱动程序只执行到该主机的直接连接,一些驱动程序检查服务器的类型,如果它是副本集节点,连接到复制集(这可能导致没有任何查询或命令发送到URI中最初给出的主机(。

在MongoDB 4.4兼容的驱动程序中,行为是统一的,并添加了directConnectionURI选项来强制任何一种行为(true用于连接到指定的主机,false用于执行发现;如果未设置,驱动程序将执行历史上的任何操作(。

如果使用直接连接,则只能指定一个主机。您的URI包含多个或解析为多个。

有关详细信息,请参阅https://github.com/mongodb/specifications/pull/739.

最新更新