Aby utworzyć kopię zapasową w MongoDB, skopiuj pliki bezpośrednio lub użyj jednego z kilku narzędzi do tworzenia kopii zapasowych/zarządzania.
Istnieje kilka sposobów tworzenia kopii zapasowej bazy danych MongoDB:
- Skopiuj pliki danych
- Użyj
mongodump
- Użyj MongoDB Cloud Manager
- Użyj Menedżera operacji
Skopiuj pliki danych
Możesz skopiować podstawowe pliki danych, których MongoDB używa do przechowywania danych. Znajdują się one w katalogu danych.
Domyślna lokalizacja katalogu danych to /data/db , jednak jeśli używasz innej lokalizacji, musisz użyć jej zamiast tego.
Powinieneś skopiować cały katalog, aby uzyskać pełną kopię zapasową.
Możesz także użyć migawek, jeśli wolumin to obsługuje. Na przykład w systemie Linux użyj LVM (Menedżera woluminów logicznych), aby utworzyć migawkę, a następnie możesz skopiować z tej migawki do lokalizacji kopii zapasowej/lokalizacji zdalnej.
Użyj mongodump
Możesz użyć mongodump
wykonać kopię zapasową danych i mongorestore
aby go przywrócić.
Aby szybko wykonać kopię zapasową całej zawartości działającego serwera, otwórz nowy wiersz poleceń/terminalu, przejdź do katalogu, w którym chcesz umieścić /dump folder, w którym ma zostać utworzony, i wpisz następujące polecenie:
mongodump
Będziesz musiał podać pełną ścieżkę, jeśli katalog bin MongoDB nie znajduje się w Twojej PATH.
Jeśli okaże się, że nie możesz uruchomić mongodump , upewnij się, że opuściłeś mongo lub otworzył nowe okno terminala/wiersza poleceń przed uruchomieniem mongodump , ponieważ jest to osobne narzędzie.
Wiadomość wynikowa:
2016-07-12T15:44:34.467+0700 writing music.artists to 2016-07-12T15:44:34.467+0700 writing music.musicians to 2016-07-12T15:44:34.467+0700 writing music.catalog to 2016-07-12T15:44:34.468+0700 done dumping music.artists (13 documents) 2016-07-12T15:44:34.469+0700 done dumping music.musicians (10 documents) 2016-07-12T15:44:34.469+0700 done dumping music.catalog (10 documents) 2016-07-12T15:44:34.470+0700 writing music.producers to 2016-07-12T15:44:34.470+0700 writing music.jazz to 2016-07-12T15:44:34.470+0700 done dumping music.producers (5 documents) 2016-07-12T15:44:34.470+0700 done dumping music.jazz (1 document) 2016-07-12T15:44:34.534+0700 writing test.restaurants to 2016-07-12T15:44:34.705+0700 done dumping test.restaurants (25359 documents)
A oto jak to wygląda w Finderze mojego Maca:
Jak widać, utworzył folder o nazwie dump , następnie folder dla każdej bazy danych, a następnie zrzucił wszystkie kolekcje i ich metadane do odpowiedniego folderu bazy danych. Rozszerzyłem muzykę folder bazy danych, aby wyświetlić pliki w tym katalogu.
Zauważ, że mongodump
nadpisuje pliki wyjściowe, jeśli istnieją w folderze danych kopii zapasowej, więc przed uruchomieniem mongodump
przenieś lub zmień nazwy plików, które musisz zachować ponownie.
Utwórz kopię zapasową pojedynczej bazy danych
Możesz wykonać kopię zapasową pojedynczej bazy danych, określając nazwę bazy danych w --db
parametr:
mongodump --db=music
Utwórz kopię zapasową jednej kolekcji
Możesz wykonać kopię zapasową pojedynczej kolekcji, określając nazwę kolekcji w --collection
parametr:
mongodump --db=music --collection=artists
Określ lokalizację kopii zapasowej
Użyj --out
parametr określający katalog, w którym ma być zapisana kopia zapasowa:
mongodump --db music --out /data/backups
Więcej opcji
mongodump
ma o wiele więcej opcji określania sposobu tworzenia kopii zapasowej danych. Zawsze możesz uruchomić mongodump --help
aby zobaczyć, które opcje są dostępne.
Przywracanie mongodump
Kopia zapasowa
Możesz przywrócić dowolny mongodump
wykonaj kopię zapasową, uruchamiając mongorestore
. który działa podobnie do mongodump
.
Zobacz mongorestore --help
aby uzyskać więcej informacji.
mongodump
i mongorestore
są przeznaczone głównie do mniejszych wdrożeń oraz do częściowego tworzenia kopii zapasowych i przywracania w oparciu o zapytanie, synchronizację między środowiskiem produkcyjnym a środowiskiem pomostowym lub programistycznym lub zmianę silnika pamięci masowej autonomicznego.
W przypadku większych systemów, klastrów podzielonych na fragmenty lub zestawów replik użyj bardziej niezawodnego systemu tworzenia kopii zapasowych, takiego jak MongoDB Cloud Manager lub Ops Manager.
Menedżer chmury MongoDB
MongoDB Cloud Manager to hostowana platforma do zarządzania MongoDB.
Możesz użyć MongoDB Cloud Manager do ciągłego tworzenia kopii zapasowych zestawów replik MongoDB i klastrów podzielonych na fragmenty, odczytując dane oplog z wdrożenia MongoDB.
MongoDB Cloud Manager działa na zasadzie subskrypcji. Więcej informacji tutaj.
Menedżer operacji
Ops Manager jest podobny do MongoDB Cloud Manager, z wyjątkiem tego, że jest zainstalowany w twoim lokalnym środowisku (tj. Nie w chmurze). Możesz go więc używać do monitorowania, automatyzacji i tworzenia kopii zapasowych wdrożenia MongoDB.
Ops Manager jest dostępny dla subskrybentów MongoDB.