我通过 Heroku 在 MongoLab 上设置了一个 MongoDB 数据库。我选择了免费的单节点沙盒计划,而不是任何副本集集群。
我在 MongoLab 上的数据库页面显示了以下用于连接数据库的 URI:
mongodb://<dbuser>:<dbpassword>@ds012345.mongolab.com:12345/heroku_app12345678
HerokuMONGOLAB_URI
在设置部分的配置变量下列出了相同的内容,但为其附加了一个副本集选项:?replicaSet=rs-ds012345
.
我知道如果 mongod 是副本集的成员,则副本集选项指定副本集的名称。
既然我在MongoLab上设置数据库的时候好像没有选择副本集集群方案,那么为什么Heroku的MONGOLAB_URI
配置变量似乎表明数据库是副本集的成员呢?
我应该在使用 Node.js 和 Express 构建的应用程序中使用哪个 URI?