2013-07-26 9 views
11

Jestem zalogowany z użytkownikiem, który ma ReadWriteAnyDatabase, dbAdminAnyDatabase, userAdminAnyDatabase, clusterAdmin, ale nadal nie może skopiować bazy danych. Mogę uzyskiwać dostęp i tworzyć kolekcje w obu bazach danych indywidualnie.mongodb zwraca nieautoryzowane na copydatabase

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

wersja MongoDB jest 2.4.5

+0

Zobacz tutaj: http://stackoverflow.com/questions/16854898/mongodb-db-copydatabase-fail-on-unauthorized. wygląda na ten sam problem, – lexeme

+0

, ale nie ma tam rozwiązania. Jeśli rozmiar bazy danych jest zbyt duży, kopiowanie rekordów dla każdej kolekcji będzie strasznie wolne i podatne na błędy. Kopiowanie bazy danych na serwerze za pomocą pojedynczego polecenia jest tym, czego potrzebujemy. – Rajiv

Odpowiedz

6

Ten jeden nie zadziała komunikatu.

W źródle jest uwaga: pod numerem https://github.com/mongodb/mongo/blob/master/src/mongo/db/cloner.cpp linia 704 "Uwaga: nie działa z włączoną funkcją uwierzytelniania, z wyjątkiem użytkowników w starym stylu."

+1

Aktualizowanie tego dla uwierzytelniania w nowym stylu jest śledzone w [SERVER-8213] (https://jira.mongodb.org/browse/SERVER-8213) (obecnie jest w wersji 2.6). – jmikola

+0

Thx niż aktualizuję mój komentarz pod adresem: http://stackoverflow.com/questions/16854898/mongodb-db-copydatabase-fail-on-unauthorized – attish

-1

czego potrzebujesz zalogowaniu w bazie danych administratora zapytań administracyjnych, a jej użytkownik wymaga uprawnień administratora w bazie

+0

-1 dla nie konstruktywnej odpowiedzi. – vipulsharma

Powiązane problemy