2013-07-26 4 views
11

私はreadWriteAnyDatabase、dbAdminAnyDatabase、userAdminAnyDatabase、clusterAdminを持っていてもデータベースをコピーできないユーザーでログインしています。両方のデータベースで個別にコレクションにアクセスして作成することができます。mongodbはコピーデータベースで無許可で返します

> use admin 
> db.auth('user', 'password') 
> db.copyDatabase('database1', 'database2') 
{ "ok" : 0, "errmsg" : "unauthorized" } 

MongoDBのバージョンでは、管理クエリに管理データベースにログインする必要は2.4.5

+0

ここをご覧ください:http://stackoverflow.com/questions/16854898/mongodb-db-copydatabase-fail-on-unauthorized。同じ問題のように見える – lexeme

+0

しかしそこに解決策はありません。 dbのサイズが大きすぎると、各コレクションのコピーレコードは非常に遅くなり、エラーが発生しやすくなります。単一のコマンドでサーバー上のデータベースをコピーすることが必要です。 – Rajiv

答えて

6

この1つは、現在動作しません管理データベースに権限が必要です。

ソースにメモがあります:https://github.com/mongodb/mongo/blob/master/src/mongo/db/cloner.cpp行704 "注:古いスタイルのユーザーを除き、認証が有効な場合は機能しません。"

+1

新しいスタイルのauthの更新は、[SERVER-8213](https://jira.mongodb.org/browse/SERVER-8213)(現在は2.6向け)で追跡されています。 – jmikola

+0

Thxより私のコメントを更新します:http://stackoverflow.com/questions/16854898/mongodb-db-copydatabase-fail-on-unauthorized – attish

-1

あり、そして彼女のユーザーが

+0

-1非建設的な答えです。 – vipulsharma

関連する問題