robomongo restaurar query example datos mongodb mongodump

mongodb - restaurar - mongorestore windows



mongodump ignora algunas colecciones especificadas (4)

Estaba intentando hacer una copia de seguridad de mi base de datos de Mongo en el servidor del producto y luego restaurarla al servidor de pruebas. y aquí viene un problema, hay muchas colecciones en db, quiero ignorar algunas colecciones que no quiero restaurar en el servidor de pruebas.

Puedo abordar esto volcando la base de datos de prueba, volcando la base de datos de producción, y luego restaurar el producto a la puesta en escena utilizando la opción --drop . y restaurar las colecciones especificadas en db de ensayo. uh ... es muy malo

1. dump producting db

mongodump --host product-server-host --username abcd --password bcda -d db -o pruduct-dump-dir

2. dump staging db

mongodump --host staging-server-host --username abcd --password bcda -d db -o staging -dump-dir

3. restaurar toda la colección, luego restaurar la colección restaurar restaurar pruduct-dump-dir al servidor de ensayo

mongorestore --host staging-server-host --username abcd --password bcda --drop pruduct-dump-dir mongorestore --host staging-server-host --username abcd --password bcda --drop --collection coll pruducting-dump-dir

¿Hay alguna opción como ignorar-colección cuando estoy volcando? Cualquier sugerencia será apreciada: 3


A partir de Mongo 3.4, ahora puede especificar una --nsExclude <namespace pattern> al restaurar desde un volcado de base de datos Mongo, que excluirá los espacios de nombres especificados de la operación de restauración. Esto es particularmente útil cuando ya se ha producido la operación mongodump .

Documentación oficial aquí: https://docs.mongodb.com/manual/reference/program/mongorestore/#cmdoption-nsexclude

Puede excluir múltiples colecciones con comodines:

mongorestore --db test --nsExclude ''test.*_tmp''

O alternativamente, la especificación de múltiples opciones --nsExclude también funciona:

mongorestore --db test --nsExclude ''test.collection1'' --nsExclude ''test.collection2''


Ahora disponible desde la versión 3.0.0

--excludeCollection <collection_name> --excludeCollectionsWithPrefix <collection_prefix>

Repetir para excluir más de 1.

Revisa la documentación


Puede agregar --collection COLLECTION_NAME para volcar la colección que necesita. De forma predeterminada, si no especifica una colección para volcar desde una base de datos, MongoDump todas las colecciones en esa base de datos.


mongodump --db test --excludeCollection=users --excludeCollection=salaries