galaxy.meteor连接到mlab.com mongo数据库

时间:2016-03-20 21:41:10

标签: mongodb meteor mlab

我正在galaxy.meteor.com上托管一个流星应用程序,并计划在这个应用程序中使用mongolab.com(mlab.com)数据库,这是由银河开发者推荐的。 不幸的是,我无法将我的应用程序连接到mlab数据库。以下是我的settings.json文件:

{   "galaxy.meteor.com": { 
          "env": { 
            "ROOT_URL": "http://<appname>.meteorapp.com/", 
            "MONGO_URL": "mongodb://<dbuser>:<dbpassword>@ds<123456>-a0.mlab.com:<123456>,<ds123456>-a1.mlab.com:<123456>/<dbname>?replicaSet=rs-ds<123456>",
            "MONGO_OPLOG_URL": "mongodb://<oplog-reader-name>:<oploguserpassword>@ds<123456>-a0.mlab.com:<123456>,ds<123456>-a1.mlab.com:<123456>/admin?replicaSet=rs-ds<123456>"
          }     
}}

Meteor日志显示以下问题:

  

2xkx 2016-03-20 22:37:50 + 01:00 异步函数回调异常:   MongoError:auth failed 2xkx 2016-03-20 22:37:50 + 01:00 at   Object.toError   (/app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/utils.js:110:11)   2xkx 2016-03-20 22:37:50 + 01:00 at   /app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/db.js:1128:31   2xkx 2016-03-20 22:37:50 + 01:00 at   /app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/db.js:1843:9   2xkx 2016-03-20 22:37:50 + 01:00在Server.Base._callHandler   (/app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/base.js:445:41)   2xkx 2016-03-20 22:37:50 + 01:00 at   /app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/server.js:468:18   2xkx 2016-03-20 22:37:50 + 01:00在[object Object] .MongoReply.parseBody   (/app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/responses/mongo_reply.js:68:5)   2xkx 2016-03-20 22:37:50 + 01:00在[object Object]。   (/app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/server.js:426:20)   2xkx 2016-03-20 22:37:50 + 01:00在[object Object] .emit   (events.js:95:17)2xkx 2016-03-20 22:37:50 + 01:00 at [object   宾语]。   (/app/bundle/programs/server/npm/mongo/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:201:13)   2xkx 2016-03-20 22:37:50 + 01:00在[object Object] .emit   (events.js:98:17)

mongodb-logs显示错误如下。

  

无法使用机制验证dbusername @ dbname   MONGODB-CR:AuthenticationFailed MONGODB-CR凭证中缺少   用户文档

有什么建议吗?感谢

2 个答案:

答案 0 :(得分:1)

MONGO_OPLOG_URL应该是:

mongodb://<oplog-reader-name>:<oploguserpassword>@ds<123456>-a0.mlab.com:<123456>,ds<123456>-a1.mlab.com:<123456>/local?authSource=admin&replicaSet=rs-ds<123456>

答案 1 :(得分:0)

问题已解决。我被银河系支持团队的成员告知

  

mLab连接和某些较旧的Meteor版本存在问题,流星1.0.4.2或更高版本应该有效。

将Meteor更新为1.2.1。部署的应用程序最终连接到数据库。

注意:当我只是运行 meteor update 时,即使没有显示错误,项目也没有实际更新。确保使用 meteor update --release xxx (xxx替换为所需版本)并检查更新是否适用于 meteor --version < / em> 之后。