我正在连接不是localhost的mongo服务器。我正在使用猫鼬。 在某些时刻我需要与mongo本地驱动程序连接,所以我这样做:
mongoose.mongo.MongoClient.connect(uri, function (err, conn) {});
但conn
对象为null
。
最近我改变了服务器结构,现在所有的mongo数据库都是远程的,在我的新节点机器上我根本没有安装mongo shell ...首先,所有工作正常,连接uri是:
mongodb://x.x.x.x:27017/database,mongodb://y.y.y.y,mongodb://z.z.z.z
其中x.x.x.x:27017
是主要的,经过一段时间后,由于初始主要的中断,新的主要已被选举,现在我开始使用相同的uri,但连接对象是null
而我不知道为什么......
有人有类似的问题吗?或者可能是解决方案或想法......
答案 0 :(得分:2)
连接uri错了:
代替:
mongodb://x.x.x.x:27017/database,mongodb://y.y.y.y,mongodb://z.z.z.z,{options}
对于本机驱动程序MongoClient我应该使用:
mongodb://x.x.x.x:27017,y.y.y.y:27017,z.z.z.z:27017/database?opt1=o1&opt2=o2
这是我找到这个解决方案的地方: MongoClient.connect