MongoDB Mongorestore und bestehende Sammlung mit Aufzeichnungen

81

Ich muss eine mit generierte Sammlung mongodumpin eine vorhandene Datenbank importieren (wiederherstellen) und möchte, dass die Datensätze mit der vorhandenen Sammlung zusammengeführt werden.

Werden mongorestoredie Datensätze in derselben Sammlung zusammengeführt oder wird die vorhandene Sammlung gelöscht, bevor die Datensätze wiederhergestellt werden?

Simone Carletti
quelle

Antworten:

131

mongorestorelöscht die vorhandene Sammlung nur, wenn Sie das --dropArgument verwenden.

Wenn Sie nicht verwenden --drop, werden alle Dokumente in die vorhandene Sammlung eingefügt, es sei denn, ein Dokument mit derselben ist _idbereits vorhanden. Dokumente mit demselben _idwerden übersprungen, sie werden nicht zusammengeführt. Daher mongorestorewerden standardmäßig niemals vorhandene Daten gelöscht oder geändert.

Niels van der Rest
quelle
Wird der Mongodb tatsächlich mit der Option --drop gelöscht? In meinem Fall kann ich beim Wiederherstellen die vorherigen Datensätze sehen, die nach dem Dump hinzugefügt wurden. Können
codeofnode
2
Mongorestore ref für die Antwort oben: docs.mongodb.org/manual/reference/program/mongorestore/…
Tomas Romero
5
@codeofnode aus der Dokumentation : --drop does not drop collections that are not in the backup.. Sie sollten sicherstellen, dass die Sammlung, von der Sie erwarten, dass sie gelöscht wird, tatsächlich in der Sicherung vorhanden ist.
CSvan