我正在尝试通过节点连接到数据库。我已经使用以下形式的Mongo URL来处理较小的数据库:
HashMap
当我切换出使用更大的数据库时,请使用以下形式的Mongo URL:
mongodb://[username]:[password]@db1-a0.example.net:27017/[DB-Name]
它将引发“ RangeError:超出最大调用堆栈大小”错误,并且将无法连接。该URL是数据库之间唯一更改的内容。
我已经检查了数据库的详细信息,并且可以通过RoboMongo / Robo 3T访问它,因此数据库肯定存在。
尝试使用以下代码通过Mongoose版本^ 5.2.10连接:
mongodb://[username]:[password]@db1-a1.example.net:27017,db2.example.net:2500/[DB-Name]?replicaSet=test
答案 0 :(得分:0)
好像您正在尝试使用副本集。如果是这样,请尝试按照以下说明进行连接`
var uri = `mongodb://${userName}:${encodeURIComponent(password)}@${clusterName}/${dbName}?ssl=true&replicaSet=${process.env.replicaSetName}&authSource=${authDB}`
var db = mongoose.connect(uri).then().catch() // Whatever inside the then and catch blocks
`