3

mongo CLI を使用して、MongoLab の 2 つの異なる DB 間でコピーしようとしています。私はドキュメントに従いました - http://docs.mongodb.org/manual/reference/method/db.copyDatabase/

  1. ターゲット DB に接続されています。
  2. 以下を実行しました。

    db.copyDatabase('source-db', 'target-db', 'source-host', 'source-user', 'source-pwd')

しかし、私はいつも得ています:

{ "ok" : 0, "errmsg" : "unauthorized" }
4

2 に答える 2

2

同じエラーが発生しますが、コレクションをコピーしようとすると:

> db.coll1.copyTo("coll2");
Wed Jul 24 13:32:05 uncaught exception: { "ok" : 0, "errmsg" : "unauthorized" }

私のデータベースは MongoHQ が管理する共有サーバー上にあるため、サービスが許可しないアクセス許可の問題copyToや、他のコマンドの実行が間違いなく存在する可能性があります。

簡単な回避策は、コレクション内のすべてのオブジェクトを手動でフェッチし、それらを 2 番目のコレクションに挿入することです。これは、copyTo実装前に行われた方法です。

db.coll1.find().forEach(function(o) { db.coll2.insert(o); });
于 2013-07-24T11:18:45.927 に答える