首页 > 解决方案 > Mongoose 在传递多个主机时抛出错误

问题描述

我从 2 天起就陷入了这个问题

url = 'mongodb://1.1.1.1:27017/test,2.2.2.2:27017';

每当我尝试连接它时,猫鼬都会引发错误

MongoError:数据库名称不能包含字符“。”

我什至尝试过url = 'mongodb://1.1.1.1:27017/test,2.2.2.2:27017/test';

标签: mongodbmongoose

解决方案


可以在 URL 中传递多个连接,但数据库的名称需要放在最后。

来自猫鼬文档:

const conn = mongoose.createConnection('mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]', options);

对于您的示例:

url = "mongodb://1.1.1.1:27017,2.2.2.2:27017/test"

一个 mongoose 对象一次只能连接到一个数据库,尽管它可以与同一个数据库有多个连接。


推荐阅读