2012-05-04 8 views
1

私は、playframework -v 1.2.4を使用していて、morphiaプラグインを使用しています。mongodb認証に失敗しました。エラー

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 

..次のように

Oops: RuntimeException 
An unexpected error occured caused by exception RuntimeException: 
MongoDB authentication failed: mydb 

マイapplication.confしかし、上記の資格情報ができます:私はプレイテストを実行し、mongolab DBで接続すると、例外が次のエラーでスローされます。 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シェルと接続します。なぜ私はこのエラーを取得していますか?

答えて

1

PlayMorphiaモジュールを使用していて、quick look at the documentationとすると、 "morphia.db.host"の代わりに "morphia.db.seeds"が使用されています。

「シード」が指定されていないため、モーフアモジュールがローカルホストに接続している可能性があります。

+0

を。しかし、問題は "モンゴラブ"で動くことです。フレームワークをサポートしていますmongolab –

+0

再生は、公式のJava Mongo DriverのontopであるMorphiaのontopです。私はモンゴラブがなぜ支持されないのか分かりません。 Mongoプロトコルはかなりシンプルで、ソケット接続がコンピュータの外にあると、Javaクライアントまたはターミナルクライアントの違いをモノゴラブが知るべきではありません。 – Nican

0

は全く同じ問題がありました。 は、私はあなたがいない管理DBに対して、使用しているdbが非常に対して認証するように見えるんmorphiaを果たし、あなたはしかし

use admin 
db.addUser("user", "pw") 

を介してユーザを追加したとします。以下は私の問題を解決しました:

/path/to/mongo 
use admin 
db.auth("user", "pw") 
use myDatabase 
db.addUser("user", "pw") 

今それが動作するはずです:)これは、ローカルホストで実行することができます

関連する問題