使用Node.js连接到mongoDB数据库时出错

时间:2019-09-10 10:18:24

标签: node.js mongodb mongoose mlab

使用Node.js连接MLAB中存在的mongoDB数据库时,出现以下错误。

Error in DB connection : {
  "name": "MongoNetworkError",
  "errorLabels": [
    "TransientTransactionError"
  ]
}

这是我的代码:

var mongoose = require('mongoose');
const authData =  {
    "useNewUrlParser": true,
    "useCreateIndex": true
};
//connecting local mongodb database named test
mongoose.connect(
  'mongodb://subhra:*****@ds139989.mlab.com:39989/hlloyd',
  {useCreateIndex: true, useNewUrlParser: true,useUnifiedTopology: true },
  (err)=>{
    if (!err) 
      console.log('MongoDB connection succeeded.');
    else 
      console.log('Error in DB connection : ' + JSON.stringify(err, undefined, 2));
  }
);

module.exports = mongoose;

这里的数据库位于MLAB内部,但是当我尝试连接到该数据库时,会抛出该错误。我需要在这里连接到我的数据库。

2 个答案:

答案 0 :(得分:0)

"useCreateIndex": trueuseUnifiedTopology: true已弃用。



试用以下代码连接mongoDB数据库。

mongoose.connect('mongodb://subhra:*****@ds139989.mlab.com:39989/hlloyd', {useNewUrlParser: true})
.then(() => console.log("Connected"))
.catch(err => console.log(err));

module.exports = mongoose;

答案 1 :(得分:0)

请在MongoDB网站的“主页>安全部分>网络访问>添加IP”之后,将您当前的IP或0.0.0.0添加到白名单。

我希望这会有所帮助。