validate()(校验集合完整性)

最后更新:2026-10-09

validate()(校验集合完整性)

validate()检查集合数据的结构完整性,例如`db.users.validate({ full: true })`。它扫描集合内部的BSON文档和索引,报告损坏或校验错误,常用于故障排查和升级前的健康检查。full: true会执行更深入的校验但耗时更长。返回结果含valid字段,true表示数据完整。

分类索引与管理
MongoDB 版本1.0+
示例语言mongosh (Shell)

📝 语法

db.<集合>.validate({ full: <bool> })

⚙️ 参数

full可选。true执行更彻底的扫描(含索引检查),默认false。

返回值:包含valid、ns、nrecords等字段的校验报告。

▶ 示例

请在本地安装的 mongosh 中执行以下命令(需已启动 mongod):

// validate:校验users集合的完整性
const report = db.users.validate({ full: false })
print('valid: ' + report.valid)

运行结果:

valid: true

📌 注意事项

📚 相关教程

❓ 常见问题

Qvalidate的full参数有什么作用?
Afull: true会额外深度校验索引等内部结构,检测更全面,但耗时明显增加。
Qvalidate返回的valid字段是什么?
Avalid表示集合数据是否通过校验,true为完整无误,false表示发现损坏。
Q集合校验发现损坏怎么办?
A立即停止写入,从最近备份恢复,并检查磁盘与硬件是否异常。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏