私はMongoDBデータベースを持っており、このデータベースに存在するコレクションの1つからいくつかの「レコード」をエクスポートしようとしています。これが私が使おうとしているコマンドと私が得ているエラーです:
mongoexport --collection my_collection --out my_collection.json --limit 10 --db my_db --username mongoadmin --password secret --Host localhost
connected to: localhost
assertion: 18 { ok: 0.0, errmsg: "auth failed", code: 18 }
ここで何が悪いのかわからない。
その追加パラメータで完璧に機能しました--authenticationDatabase admin
。
追加のパラメーターを追加してもうまくいきませんでした。
MLabサポートに連絡したところ、接続しているシェルやドライバーが、データベースが実行されているバージョンであるMongoDB3.0.xと互換性がないと言われました。
3.0.10をインストールしたところ、正常に接続できました。
Mlabs.comの設定に新しいユーザー/パスワードを追加するとうまくいきました。
なんらかの理由で、パスワードをリセットした後でも、mongoexport
またはmongodump
ユーティリティがデフォルトユーザーとして機能しませんでしたが、デフォルトユーザーとして接続できました。モンゴシェルに。
しかし、私にとっての解決策は、mlabs.comのデータベースの設定ページから、より多くのユーザーを作成できることでした。その後、新しいユーザーでこれらのユーティリティに接続することができました。シェルで新しいユーザーを作成することもできますが、idはオンラインツールを使用するだけです。
mongoexport -h <serverURL:port> -d <database> -c <collection> -u <newuser> -p <newpassword> -o collection.json