Search code examples
node.jsmongodbmongoosemongodb-.net-drivermongodb-atlas

Connection to MongoDB atlas using Node.js driver fails


  at QueryReqWrap.onresolve [as oncomplete] (dns.js:203:19) {
  errno: 'ETIMEOUT',
  code: 'ETIMEOUT',
  syscall: 'queryTxt',
  hostname: 'scheduly.1eln0.mongodb.net'
}

I’m facing the above connection Error while connecting with MongoDB Atlas. I’ve double-checked my username and password. I’ve whitelisted all the IP’s. I’m stuck in the middle of a project and cannot connect to the DB itself. my connection strings are:

const mongoose = require("mongoose");
const mongodb = require("mongodb");
const uri = "mongodb+srv://ghulamghousdev:***********@scheduly.1eln0.mongodb.net/scheduly?retryWrites=true&w=majority

mongoose
  .connect(uri, {
    useNewUrlParser: true,
    useUnifiedTopology: true,
  })
  .then(() => {
    console.log("Connected");
  })
  .catch((err) => console.log(err));

The name of the Database on MongoDB atlas is scheduly.


Solution

  • Have you tried to add the ip of your VPS, host to the IP Whitelist of Network access? You can see more details for that setting from here https://docs.atlas.mongodb.com/security-whitelist/