我总是连接到“admin”数据库,这是一个fixed bug。
使用Mongoose 5.0.6 MongoDb 3.6并尝试连接到Atlas。
干杯
答案 0 :(得分:27)
基本上你应该尝试连接你的url链接,并在mongoose connect方法中指定数据库名称 所以,如果您的群集链接是:
mongodb+srv://userName:Passwrod@clustor.mongodb.net/
,您的数据库名称是:
testDB
然后你应该按如下方式调用mongoose.connect方法:
mongoose.connect('mongodb+srv://userName:Passwrod@cluster.mongodb.net/', {dbName: 'yourDbName'});
答案 1 :(得分:2)
请注意,如果在连接MongoDB Atlas时出错,请确保:
如果全部失败
祝你好运!
答案 2 :(得分:1)
当您将此连接字符串用于(MongoShell 3.6+)时,建立连接:
var connDB = "mongodb+srv://<username>:<password>@cluster-fax0w.mongodb.net/test"
但是,如果不在mongoose.connect()中输入DBName,将无法读取/写入数据。
mongoose.connect(uri, { dbName: <your DB name> })
.then( () => {
console.log('Connection to the Atlas Cluster is successful!')
})
.catch( (err) => console.error(err));