MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB-Sicherung und -Wiederherstellung mit MongoDump

Falls Sie das Gefühl haben, dass Sie eine Sicherungskopie Ihrer Dateien und Ordner in MongoDB erstellen möchten, folgen Sie mir durch diesen Artikel.

Wir werden Mongodumo und Mongorestore für unsere Sicherungs- und Wiederherstellungsmethodik verwenden. mongodump liest Daten aus einer MongoDB-Datenbank und erstellt High-Fidelity-BSON-Dateien, die das mongorestore-Tool verwenden kann, um eine MongoDB-Datenbank zu füllen. mongodump und mongorestore sind einfache und effiziente Tools zum Sichern und Wiederherstellen kleiner MongoDB-Bereitstellungen, aber nicht ideal zum Erfassen von Sicherungen größerer Systeme. mehr lesen

Backup mit Mongodump erstellen:
[[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 ==> um den Pfad anzugeben, wohin die Backup-Ausgabe gehen soll.

–db ==> Name der Datenbank, von der Sie kein Backup machen wollen.

Mughees DB DROP:
>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 
>

Es wurden keine Sammlungen angezeigt, da die Datenbank gelöscht wurde

> show databases;
show databases;
admin 0.000GB
config 0.000GB
local 0.000GB

Wir haben die Mughees-DB erstellt, aber die DB wird erst erstellt, wenn Sie eine Sammlung innerhalb der DB erstellen.

Jetzt Mughees DB wiederherstellen:

Lassen Sie uns nun unser Backup der Mughees-DB wiederherstellen und sicherstellen, dass Sie die Datenbank mit derselben erstellt haben.

[[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]#
Überprüfen Sie die Wiederherstellungsdatenbank:

Lassen Sie uns nun überprüfen, ob die Datenbank und die darin enthaltenen Sammlungen verfügbar sind oder nicht:

>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