Embora a abordagem acima de mongodump / drop / mongorestore funcione bem de uma perspectiva técnica, será necessário que você coloque o banco de dados offline enquanto faz isso, o que seria um evento que afeta o serviço.
Se você quiser fazer isso sem tempo de inatividade E se você estiver usando Conjuntos de Réplicas do MongoDB [1], você pode fazer assim:
- Selecione um membro e pare o MongoDB lá (service mongodb stop). Se este era o PRIMÁRIO, espere que outro membro seja eleito PRIMÁRIO.
- Remova os arquivos de dados desse membro (cd / var / lib / mongodb; rm *).
- Reinicie o serviço MongoDB novamente (service mongodb start).
- Aguarde o membro sincronizar novamente com o PRIMARY (rs.status ()).
- Isso reconstruirá apenas os arquivos de dados necessários (menores).
Em seguida, repita as etapas acima para cada um dos outros membros no conjunto de réplicas.
[1] link )