Zrzut przywracania MongoDB

Zrzut przywracania MongoDB

„Baza danych MongoDB zapewnia dodatkową funkcję przywracania usuniętych danych. Podobnie jak funkcja przywracania w systemie Windows, po usunięciu naszego pliku można go przywrócić z pojemnika recyklingu za pomocą opcji przywracania. Podobnie funkcja MongoDB przywracania służy do pobrania pliku z powrotem do miejsca, w którym był przed usunięciem. Mongorestore pracuje we współpracy z MongoDump. Wykorzystaliśmy kilka przykładów do wyjaśnienia ich pracy. W tym artykule dostarczy Ci wiedzy na temat przywracania plików kopii zapasowych w MongoDB.

W celu tworzenia kopii zapasowych i przywracania w MongoDB musimy użyć dodatkowych funkcji do bazy danych; To są narzędzia bazy danych MongoDB.

Notatka: Po zainstalowaniu narzędzi musisz dodać ścieżkę w zmiennej środowiskowej, aby skutecznie używać wszystkich funkcji w narzędziach bazy danych w terminalu. Ta ścieżka jest lokalizacją folderu pojemnika obecnego w folderze narzędzi MongoDB."

Różnica między MongoDump i Mongorestore

Istnieje dwuznaczność między działaniem MongoDump i Mongorestore.

  • MongoDump tworzy klon lub kopię folderu, który już istnieje. Jest to gotowe zapisać plik z niechcianej utraty danych. Tworząc kopię zapasową, twoje dane są zapisywane. Na przykład, jeśli z jakiegoś powodu oryginalny plik zostanie uszkodzony, twoje dane zostaną zapisane w skopiowanym.
  • W przeciwieństwie do MongoDump, Mongorestore jest funkcją przywracania danych tworzenia kopii zapasowych. To przeciwieństwo funkcji MongoDump służy do przywrócenia bazy danych. Przywraca dane za pomocą użyteczności zrzutów danych BSON z MongoDump. Korzystając z Mongorestore, używany jest domyślny folder w pojemniku MongoDump lub folder zrzutu.

Aby wdrożyć funkcję Mongorestore, najpierw przechodzimy do Mongo Shell, aby zobaczyć wszystkie obecne bazy danych. Spośród nich wszystkie demo i drugie to dwie bazy danych, które tworzy użytkownik. Podczas gdy pozostałe trzy to domyślne bazy danych.

>> Pokaż DBS

Po spojrzeniu na bazy danych, teraz zrezygnujemy z powłoki Mongo za pomocą Ctrl + C.

Terminal użytkownika służy do wykonywania wszystkich poleceń Mongorestore. Podobnie jak MongoDump, ponieważ możemy stworzyć kopię zapasową baz danych i kolekcji osobno, możemy również przywrócić usunięte dane do folderu MongoDB.

Najpierw użyjemy prostego słowa kluczowego Mongorestore. Gdy nie ma wspomnianej ścieżki, przywróci to dane w folderze Bin of MongoDump. To przywróci dane wszystkich baz danych i kolekcji w nich, które są albo usuwane lub nie usuwane.

>> Mongorestore

Powyższy Snap wyświetla szczegóły każdej bazy danych i kolekcji. Wszystkie dane są najpierw odczytane, a ścieżka określa lokalizację, z której Mongorestore przywróci dane.

Innym sposobem przywracania wszystkich danych jest po prostu użycie folderu zrzutu jako ścieżki w poleceniu Mongorestore. To zadziała, aby wszystkie przywrócone elementy zostały ponownie przywrócone w osobnym pliku, w tym wszystkie dane MongoDB.

>> zrzut Mongurestore

Przywróć kolekcję zrzutów

Aby przywrócić kolekcję tworzenia kopii zapasowych, najpierw musimy stworzyć kopię zapasową określonej kolekcji. Więc wybraliśmy kolekcję, która jest danych obecnych w bazie danych demo. Teraz użyjemy polecenia zrzutu Mongo, aby utworzyć kopię zapasową kolekcji. To polecenie zawiera informacje z bazy danych, nazwę kolekcji, którą chcesz zrobić plik kopii zapasowej, a co najważniejsze, ścieżka, lokalizację, w której chcesz utworzyć folder. „-Out” służy do zapisania pliku.

>> MongoDump - -db Demo - - Dane dotyczące kolekcji - - Out C: \ Collectionbackup

Odpowiedź tego polecenia pokaże, że zrzucanie odbywa się bez żadnej przerwy. Folder o nazwie kolekcji „Dane” jest tworzone z rozszerzeniem „BSON” na tej samej ścieżce, którą zadeklarowałeś w poleceniu. Możesz to zobaczyć, przechodząc do menedżera plików.

Teraz zastosujemy polecenie przywracania Mongo bezpośrednio do folderu kopii zapasowej. Podać dokładną ścieżkę w poleceniu, aby uniknąć jakiegokolwiek wyjątku.

>> Mongorestore C: \ CollectionbackUp \ Demo \ Data.BSON

To przywróci tylko bazę danych i nazwę kolekcji, a nie wszystkie dokumenty wewnątrz kolekcji, ponieważ w tym momencie nie dostarczyliśmy ścieżki docelowej do przechowywania danych. Więc polecenie znajdzie ten plik źródłowy również jako punkt docelowy. Wszystkie dokumenty zostaną zduplikowane, a przywrócenie tych dokumentów zostanie nie udane. Rozwiązanie tego problemu lub można powiedzieć, że najlepsze wyniki w procesie przywracania są uzyskiwane po usunięciu pliku oryginalnego lub kopii zapasowych. A następnie zastosuj polecenie przywracania.

Przywróć usuniętą kolekcję

Najpierw przejdziemy do powłoki Mongo, a następnie przejdziemy do bazy danych demonstracyjnych i wyświetlimy wszystkie kolekcje.

Następnie upuść gromadzenie danych za pomocą polecenia Drop. W tym samym czasie, kiedy sprawdzamy wszystkie kolekcje, zobaczysz, że brakuje „danych”.

>> db.dane.upuszczać()
[cc lang = "sql" szerokie = "100%" height = "100%" ECPAPED = "true" Theme = "Blackboard" nowrap = "0"] >> Pokaż kolekcje

Teraz po prostu użyj polecenia przywracania z nazwą ścieżki, przy której chcesz przywrócić dane. Użyliśmy głównej ścieżki bazy danych, w której obecny jest oryginalny plik kolekcji.

>> Mongorestore C: \ BackupDatabase \ Demo \ Data.BSON

Obserwując ostatni wiersz wynikającego, widać, że wszystkie 4 dokumenty są przywrócone i istnieją 0 awarii. Ponownie wróć do Mongo, aby zapewnić przywrócenie gromadzenia danych.

Użyj polecenia kolekcji show.

Zobaczysz, że kolekcja „danych” jest przywrócona.

Wniosek

Głównym celem napisania tego artykułu jest wykazanie różnicy, a jednocześnie działanie narzędzi MongoDump i Mongorestore, które odgrywają ważną rolę w tworzeniu kopii danych i przywróceniu usuniętego pliku. Możesz natknąć się na taką sytuację, w której nieumyślnie usuwasz dowolną bazę danych lub kolekcję z MongoDB, za pośrednictwem polecenia lub ręcznie z folderu. Aby przezwyciężyć tę niedogodności, użyj Mongorestore.