MONGODB3.4.xで
ドキュメント( http: //mongoosejs.com/docs/connections.html )「レプリカセット接続」セクション。
// connection string using mongoose:
var uri = 'mongodb://MY_USER:[email protected]' +
'MY_SERVER-shard-00-00-clv3h.mongodb.net:27017,' +
'MY_SERVER-shard-00-01-clv3h.mongodb.net:27017,' +
'MY_SERVER-shard-00-02-clv3h.mongodb.net:27017/MY_DATABASE' +
'ssl=true&replicaSet=MY_REPLICASET_NAME-shard-0&authSource=MY_ADMIN_DATABASE';
mongoose.connect(uri);
var db = mongoose.connection;
現在、正常に機能しています!
MONGODB3.6に関する通知
バージョン3.6.xを使用するMongoDBAtlasでは、接続文字列がDNSサーバーを使用するように変更され、リンクが短くなりました。
...アプリケーションでこの接続文字列を使用すると、接続は成功しますが、より高い特権アクセスを持つatlasユーザー(atlasAdmin、readWriteAnyDatabase ...)でのみ読み取りと書き込みが可能になります。
データベースのreadWriteのみの権限を持つ特定のユーザーと連携するには、mongooseがDNSオプション(mongodb + srv)を認識しないため、MongoDB3.4で使用されているものと同じ接続文字列を維持する必要があります。
P.S. MongoDB 3.6.xのすべての新しいリソースは、引き続き正常に機能します!