sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Es posible mongodump los últimos x registros de una colección?

mongodump no expone completamente las interfaces del cursor. Pero puede solucionarlo utilizando --query parámetro.Primero obtener el número total de documentos de la colección

db.collection.count()

Digamos que hay 10000 documentos y desea los últimos 1000. Para hacerlo, obtenga la identificación del primer documento que desea volcar.

db.collection.find().sort({_id:1}).skip(10000 - 1000).limit(1)

En este ejemplo, la identificación era "50ad7bce1a3e927d690385ec" .Ahora puedes alimentar mongodump con esta información, para volcar todos los documentos con id mayor o igual.

$ mongodump -d 'your_database' -c 'your_collection' -q '{_id: {$gte: ObjectId("50ad7bce1a3e927d690385ec")}}'

ACTUALIZAR Los nuevos parámetros --limit y --skip se agregaron a mongoexport probablemente estará disponible en la próxima versión de la herramienta:https://github.com/mongodb /mongo/pull/307