2013-07-26 8 views
11

Sono registrato con un utente che ha readWriteAnyDatabase, dbAdminAnyDatabase, userAdminAnyDatabase, clusterAdmin ma non è ancora possibile copiare il database. Sono in grado di accedere e creare collezioni in entrambi i database singolarmente.mongodb restituisce non autorizzato su copydatabase

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

versione MongoDB è 2.4.5

+0

Cerca qui: http://stackoverflow.com/questions/16854898/mongodb-db-copydatabase-fail-on-unauthorized. sembra lo stesso problema – lexeme

+0

ma non vi è alcuna soluzione lì. Se la dimensione del db è troppo grande, la copia dei record per ogni raccolta sarà terribilmente lenta e soggetta a errori. La copia del database sul server tramite un singolo comando è ciò di cui abbiamo bisogno. – Rajiv

risposta

6

Questo non funziona attualmente.

C'è una nota nella sorgente: a https://github.com/mongodb/mongo/blob/master/src/mongo/db/cloner.cpp riga 704 "Nota: non funziona con l'autenticazione abilitata, tranne che come utenti vecchio stile."

+1

L'aggiornamento per l'autenticazione di nuovo stile viene tracciato in [SERVER-8213] (https://jira.mongodb.org/browse/SERVER-8213) (attualmente previsto per 2.6). – jmikola

+0

Thx di aggiornare il mio commento a: http://stackoverflow.com/questions/16854898/mongodb-db-copydatabase-fail-on-unauthorized – attish

-1

avete bisogno di registrazione nel database di amministrazione per questioni amministrative, e il suo utente deve privilegi nel database di amministrazione

+0

-1 per risposta non costruttiva. – vipulsharma

Problemi correlati