这个问题有很多问题。我看了几乎所有这些并尝试修复我的连接错误,但我无法
这是我的代码
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/mgdb";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
console.log("Database created!");
//db.close();
});
代码非常简单但是..错误已被抛出,它说
MongoError:第一次连接时无法连接到服务器[localhost; 27017] [MongoError:连接0到localhost:27017 timed]
我做了类似问题的答案,但都没有解决我的问题。请帮我解决这个问题。
答案 0 :(得分:0)
MongoClient.connect("mongodb://localhost:27017/mgdb", {
server: {
socketOptions: {
connectTimeoutMS: 500
}
},function(err, db) {
if (err) throw err;
console.log("Database created!");
});
答案 1 :(得分:0)
默认情况下,MongoDB的套接字连接时间为30秒。如果任何查询/操作花费的时间超过此时间,则连接将中止,并发生连接超时错误。
要解决此问题:您应考虑增加connectTimeoutMS和socketTimeoutMS以及poolSize设置作为以下配置。
MONGO_URI = mongodb:// user:password@127.0.0.1:27017 / dbname?keepAlive = true&poolSize = 30&autoReconnect = true&socketTimeoutMS = 360000&connectTimeoutMS = 360000