mongodump
macht die Cursorschnittstellen nicht vollständig verfügbar. Sie können dies jedoch umgehen, indem Sie --query
verwenden parameter.Zuerst die Gesamtzahl der Dokumente der Sammlung abrufen
db.collection.count()
Angenommen, es gibt 10000 Dokumente und Sie möchten die letzten 1000. Um dies zu tun, erhalten Sie die ID des ersten Dokuments, das Sie ausgeben möchten.
db.collection.find().sort({_id:1}).skip(10000 - 1000).limit(1)
In diesem Beispiel war die ID "50ad7bce1a3e927d690385ec"
.Jetzt kannst du mongodump
füttern mit diesen Informationen alle Dokumente mit einer höheren oder gleichen ID ablegen.
$ mongodump -d 'your_database' -c 'your_collection' -q '{_id: {$gte: ObjectId("50ad7bce1a3e927d690385ec")}}'
AKTUALISIEREN Die neuen Parameter --limit
und --skip
wurden zu mongoexport
hinzugefügt wird wahrscheinlich in der nächsten Version des Tools verfügbar sein:https://github.com/mongodb /mongo/pull/307