mongoDB に承認を追加しようとしています。
私はmongodb 2.2.4、php-mongo 1.4.1安定版、apache2、php 5.4、ZendFramework 1.12 + ShantyMongoを使用しています
また、3 つのインスタンスでレプリカセットを使用します。
auth = true mongo create admin データベースを設定し、このデータベースにユーザーを追加すると、次のエラーが発生しました。
Fatal error: Uncaught exception 'MongoCursorException' with message 'test.server.com:27017: unauthorized db:database_test ns:database_test.options lock type:0 client:127.0.0.1' in /apps/test_app/libs/Shanty/Mongo/Collection.php:3501
ユーザーを database_test に追加すると、すべて正常に動作します。
<?php
/* Configure logging */
MongoLog::setModule( MongoLog::ALL );
MongoLog::setLevel( MongoLog::ALL );
$m = new MongoClient(); // connect
$db = $m->selectDB("database_test");
$db->authenticate('admin','12345');
admin と database_test の両方にユーザーを追加しても、このコードは正常に機能します。
誰かが同様の問題を抱えていて、私が何をする必要があるかを知っているかもしれません。