我正在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凭证中缺少 用户文档
有什么建议吗?感谢
答案 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> 之后。