web-dev-qa-db-ja.com

TypeErrorは、Mongo DB認証を有効にしようとすると発生します

私は ステップ でMongo DB認証を有効にしようとしています。指示どおりにMongo Shellを介してユーザーを作成しようとすると、シェルは次のように報告します。

TypeError:オブジェクトadminのプロパティ 'createUser'は関数ではありません

--authオプションを指定してmongodを起動し、管理データベースに切り替えました。いつものように、感謝してください。

20
danny-v

問題は、明らかにサポートされていないmongod 2.4.9に対してこの関数を実行しようとしたことでした。このエラーメッセージは、2.6.0リリースでは発生しません。

17
danny-v

Mongo 2.4以前のバージョンを使用している場合は、addUserではなくcreateUserを使用してください。

Mongo 2.4

これを(前述のように here )、dbAdminロールとともに読み取りおよび書き込みユーザーに使用します。

db.addUser( { user: "joe",
              pwd: "secret",
              roles: [ "readWrite", "dbAdmin" ]
            } )

読み取り専用ユーザーの場合:

db.addUser( { user: "joe",
              pwd: "secret",
              roles: [ "read" ]
            } )

(可能なすべてのユーザーロールを参照 ここ 。)

Mongo 2.2

前述の読み取り/書き込みユーザーの場合 ここ

use mydb;
db.addUser("joe", "secret");

前述の読み取り専用ユーザーの場合 ここ

use mydb;
db.addUser("joe", "secret", true);
23
arun