Chcete-li vytvořit zálohu v MongoDB, buď zkopírujte soubory přímo, nebo použijte jeden z několika nástrojů pro zálohování/správu.
Existuje několik způsobů, jak zálohovat databázi MongoDB:
- Zkopírujte datové soubory
- Použijte
mongodump
- Používejte MongoDB Cloud Manager
- Používejte Správce operací
Zkopírujte datové soubory
Můžete zkopírovat základní datové soubory, které MongoDB používá k ukládání dat. Ty jsou umístěny v datovém adresáři.
Výchozí umístění datového adresáře je /data/db , pokud však používáte jiné umístění, budete muset místo něj použít toto.
Pro úplnou zálohu byste měli zkopírovat celý adresář.
Můžete také použít snímky, pokud to svazek podporuje. Například v Linuxu použijte LVM (Správce logických svazků) k vytvoření snímku a poté můžete tento snímek zkopírovat na záložní web/vzdálené umístění.
Použijte mongodump
Můžete použít mongodump
zálohujte data a mongorestore
jej obnovit.
Chcete-li rychle zálohovat veškerý obsah běžícího serveru, otevřete nový terminál/příkazový řádek a přejděte do adresáře, do kterého chcete přidat /dump složku, ve které chcete vytvořit, a zadejte následující:
mongodump
Pokud adresář MongoDB bin není ve vaší PATH, budete muset zadat úplnou cestu.
Pokud zjistíte, že nemůžete spustit mongodump , ujistěte se, že jste buď opustili mongo nebo před spuštěním mongodump otevřeli nové okno terminálu/příkazového řádku , protože se jedná o samostatný nástroj.
Výsledná zpráva:
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 takhle to vypadá ve Finderu mého Macu:
Jak můžete vidět, vytvořila složku s názvem dump , pak složku pro každou databázi a poté výpis všech kolekcí a jejich metadat do příslušné složky databáze. Rozšířil jsem hudbu databázovou složku pro zobrazení souborů v tomto adresáři.
Všimněte si, že mongodump
přepíše výstupní soubory, pokud existují ve složce zálohovaných dat, takže před spuštěním mongodump
nezapomeňte přesunout nebo přejmenovat všechny soubory, které si potřebujete ponechat znovu.
Zálohování jedné databáze
Můžete zálohovat jednu databázi zadáním názvu databáze v --db
parametr:
mongodump --db=music
Zálohování jedné sbírky
Můžete zálohovat jednu kolekci zadáním názvu kolekce v --collection
parametr:
mongodump --db=music --collection=artists
Zadejte umístění zálohy
Použijte --out
parametr určující adresář, do kterého se má záloha zapisovat:
mongodump --db music --out /data/backups
Další možnosti
mongodump
má mnohem více možností pro určení způsobu zálohování dat. Vždy můžete spustit mongodump --help
zobrazíte dostupné možnosti.
Obnovení mongodump
Záloha
Můžete obnovit jakýkoli mongodump
zálohování spuštěním mongorestore
. který funguje podobným způsobem jako mongodump
.
Viz mongorestore --help
pro více informací.
mongodump
a mongorestore
jsou určeny hlavně pro menší nasazení a pro částečné zálohování a obnovení na základě dotazu, synchronizaci z produkčního do pracovního nebo vývojového prostředí nebo změnu úložného jádra samostatného úložiště.
Pro větší systémy nebo sdílené clustery nebo sady replik použijte robustnější zálohovací systém, jako je MongoDB Cloud Manager nebo Ops Manager.
MongoDB Cloud Manager
MongoDB Cloud Manager je hostovaná platforma pro správu MongoDB.
MongoDB Cloud Manager můžete použít k průběžnému zálohování sad replik MongoDB a sdílených clusterů čtením dat oplog z vašeho nasazení MongoDB.
MongoDB Cloud Manager funguje na bázi předplatného. Více informací zde.
Správce operací
Ops Manager je jako MongoDB Cloud Manager, kromě toho, že je nainstalován ve vašem místním prostředí (tj. ne v cloudu). Můžete jej tedy použít pro monitorování, automatizaci a zálohování vašeho nasazení MongoDB.
Ops Manager je k dispozici předplatitelům MongoDB.