20

I'm always connecting to the "admin" DB, which is a fixed bug.

Using Mongoose 5.0.6 MongoDb 3.6 and trying to connect to Atlas.

  1. My question, what driver Mongoose 5.0.6 depend on?
  2. How can I find out when Mongoose will have that fix?
  3. On a different direction, is there a way to connect with MongoDB then use this connection with Mongoose?

Cheers

HatzavW
  • 560
  • 1
  • 4
  • 16

3 Answers3

57

Basically you should try connecting with your url link, and specify the DB name on the mongoose connect method so if your cluster link is:

mongodb+srv://userName:Passwrod@clustor.mongodb.net/

and your DB name is:

testDB

then you should call the mongoose.connect method as follows:

mongoose.connect('mongodb+srv://userName:Passwrod@cluster.mongodb.net/', {dbName: 'testDB'});
XDavidT
  • 147
  • 15
Chai Halfon
  • 819
  • 7
  • 5
3

Connection is established when you use this connection string for (MongoShell 3.6+) :

var connDB = "mongodb+srv://<username>:<password>@cluster-fax0w.mongodb.net/test"

However, you will not be able to read/write data without entering the DBName in the mongoose.connect().

mongoose.connect(uri, { dbName: <your DB name> })
  .then( () => {
    console.log('Connection to the Atlas Cluster is successful!')
  })
  .catch( (err) => console.error(err));
2

Just a side note if you ever get an error connecting to the MongoDB Atlas make sure:

  1. You've whitlisted our IP address / all (0.0.0.0/0)
  2. Your credentials are right
  3. Firewall / anti-virus are disabled

And if all fails

  1. Make sure your DNS is a public one. Or maybe change it to Google's public DNS. Throwing a link for the same: https://www.youtube.com/watch?v=F9u5ULrRt3Y

Goodluck!

Aajinkya Singh
  • 543
  • 1
  • 6
  • 14