我正在使用playframework -v 1.2.4,并使用morphia插件 . 当我运行play test并与mongolab db连接时,会抛出异常并出现以下错误:
Oops: RuntimeException
An unexpected error occured caused by exception RuntimeException:
MongoDB authentication failed: mydb
我的application.conf如下..,
application.mode=dev
%prod.application.mode=prod
morphia.db.host=ds033187.mongolab.com
morphia.db.port=33187
morphia.db.username=demo
morphia.db.password=demo
morphia.db.name=mydb
但上述凭据可以与mongodb连接
D:\mongodb-win32-i386-2.0.1\bin>mongo ds033187.mongolab.com:33187/mydb -u demo -p demo
MongoDB shell version: 2.0.1
connecting to: ds033187.mongolab.com:33187/mydb
>
但是我得到了与mongodb shell的联系 . 为什么我得到这个错误?
2 回答
我假设您正在使用PlayMorphia模块,并采用quick look at the documentation,它使用"morphia.db.seeds"而不是"morphia.db.host" .
可能是因为没有指定“种子”,因此morphia模块连接到localhost .
有完全相同的问题 . 我想你是通过添加用户的
然而,玩morphia似乎确实对你正在使用的数据库进行身份验证,而不是针对管理员数据库 . 以下解决了我的问题:
现在它应该工作:)