validate() (Validar Integridade da Coleção)
Última atualização: 2026-10-09
validate() (Validar Integridade da Coleção)
validate() verifica a integridade estrutural de uma coleção, ex.: `db.users.validate({ full: true })`. Ele varre os documentos BSON e os índices da coleção, reportando corrupção ou falhas de verificação — comumente executado durante solução de problemas ou antes de atualizações. full: true aprofunda a verificação ao custo de tempo. O campo valid do resultado é true quando os dados estão íntegros.
| Categoria | Índice e Administração |
|---|---|
| Versão do MongoDB | 1.0+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
db.<collection>.validate({ full: <bool> })
⚙️ Parâmetros
| full | Opcional. true executa uma verificação mais profunda incluindo índices; o padrão é false. |
|---|
Retorno:Relatório de validação com valid, ns, nrecords, etc.
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// validate: verifica a integridade da coleção users
const report = db.users.validate({ full: false })
print('valid: ' + report.valid)
Saída:
valid: true
📌 Notas
- Executá-lo em coleções enormes consome muitos recursos — prefira fora do pico
- full: true leva mais tempo porém é mais minucioso
- Em caso de corrupção, restaure do backup em vez de editar manualmente os arquivos de dados
🏷️ Tags Relacionados
💡 Casos Relacionados
Excluindo documentos e primeiros passos com o Node.js
Modelos do Mongoose e projeto de esquemas
Validação de dados e middleware do Mongoose
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QO que a opção full de validate faz?
Afull: true adiciona verificações profundas de índices e internals — mais minucioso porém visivelmente mais lento.
QO que é o campo valid no resultado de validate?
Avalid informa se os dados passaram: true significa íntegro, false sinaliza corrupção.
QO que devo fazer quando a validação encontra corrupção?
APare as escritas imediatamente, restaure do backup mais recente e inspecione a saúde do disco/hardware.