Nel caso in cui ritieni di voler eseguire un backup dei tuoi file e cartelle in MongoDB, seguimi attraverso questo articolo.
useremo mongodumo e mongorestore per la nostra metodologia di backup e ripristino. mongodump legge i dati da un database MongoDB e crea file BSON ad alta fedeltà che lo strumento mongorestore può utilizzare per popolare un database MongoDB. mongodump e mongorestore sono strumenti semplici ed efficienti per il backup e il ripristino di piccole distribuzioni MongoDB, ma non sono l'ideale per acquisire backup di sistemi più grandi. leggi di più
Esecuzione del backup utilizzando mongodump:
[[email protected] mongo]# mongodump --out=/home/mongoBackup --db=mughees 2019-10-21T13:32:48.421+0300 writing mughees.myNewCollection1 to 2019-10-21T13:32:48.422+0300 writing mughees.myNewCollection2 to 2019-10-21T13:32:48.425+0300 done dumping mughees.myNewCollection1 (3 documents) 2019-10-21T13:32:48.427+0300 writing mughees.myNewCollection3 to 2019-10-21T13:32:48.429+0300 done dumping mughees.myNewCollection3 (0 documents) 2019-10-21T13:32:48.431+0300 done dumping mughees.myNewCollection2 (1 document)
–out ==> per fornire il percorso in cui porterà l'output di backup.
–db ==> nome del database di cui eseguire il backup.
DROP mughees DB:
>show databases admin 0.000GB config 0.000GB local 0.000GB mughees 0.000GB db.dropDatabase() db.dropDatabase() { "dropped" : "mughees", "ok" : 1 } > Now we will create a mughees DB again and check if there is any collection available > use mughees use mughees switched to db mughees > show collectionsshow collections #no collection will be shown >
Nessuna raccolta è stata mostrata in quanto il database è stato eliminato
> show databases; show databases; admin 0.000GB config 0.000GB local 0.000GB
Abbiamo creato mughees DB ma il DB non viene creato fino a quando ea meno che tu non crei una raccolta all'interno del DB.
Ora ripristina Mughees DB:
Ora ripristina il nostro backup di mughees db assicurati di aver creato il database con lo stesso.
[[email protected] mongo]# mongorestore --db=mughees /home/mongoBackup/mughees 2019-10-21T13:41:34.773+0300 the --db and --collection args should only be used when restoring from a BSON file. Other uses are deprecated and will not exist in the future; use --nsInclude instead 2019-10-21T13:41:34.774+0300 building a list of collections to restore from /home/mongoBackup/mughees dir 2019-10-21T13:41:34.776+0300 reading metadata for mughees.myNewCollection1 from /home/mongoBackup/mughees/myNewCollection1.metadata.json 2019-10-21T13:41:34.783+0300 reading metadata for mughees.myNewCollection2 from /home/mongoBackup/mughees/myNewCollection2.metadata.json 2019-10-21T13:41:34.784+0300 reading metadata for mughees.myNewCollection3 from /home/mongoBackup/mughees/myNewCollection3.metadata.json 2019-10-21T13:41:34.828+0300 restoring mughees.myNewCollection1 from /home/mongoBackup/mughees/myNewCollection1.bson 2019-10-21T13:41:34.832+0300 no indexes to restore 2019-10-21T13:41:34.832+0300 finished restoring mughees.myNewCollection1 (3 documents, 0 failures) 2019-10-21T13:41:34.866+0300 restoring mughees.myNewCollection2 from /home/mongoBackup/mughees/myNewCollection2.bson 2019-10-21T13:41:34.869+0300 no indexes to restore 2019-10-21T13:41:34.871+0300 finished restoring mughees.myNewCollection2 (1 document, 0 failures) 2019-10-21T13:41:34.881+0300 restoring mughees.myNewCollection3 from /home/mongoBackup/mughees/myNewCollection3.bson 2019-10-21T13:41:34.895+0300 restoring indexes for collection mughees.myNewCollection3 from metadata 2019-10-21T13:41:34.921+0300 finished restoring mughees.myNewCollection3 (0 documents, 0 failures) 2019-10-21T13:41:34.921+0300 4 document(s) restored successfully. 0 document(s) failed to restore. [[email protected] mongo]#
Controlla il database di ripristino:
Ora controlliamo che il db e le raccolte all'interno siano disponibili o meno :
>show databases; admin 0.000GB config 0.000GB local 0.000GB mughees 0.000GB > > use mugheesuse mughees switched to db mughees > show collectionsshow collections myNewCollection1 myNewCollection2 myNewCollection3