db.collection.validate()

在本页面

Description

db.collection.validate()方法具有以下语法:

db.collection.validate( {
   full: <boolean>         // Optional
} )

要指定full选项,您还可以使用:

db.collection.validate( <boolean> ) // full option

db.collection.validate()方法可以在字段中使用以下可选 document 参数:

Field Type Description
full boolean 可选的 。一个标志,确定命令是执行较慢但更彻底的检查还是执行较快但次要的检查。


如果是true,请执行更彻底的检查。
如果false,则省略一些检查,以进行更胖但不彻底的检查。
默认值为false
从 MongoDB 3.6 开始,对于 WiredTiger 存储引擎,只有full验证过程将强制检查点并将所有内存中数据刷新到磁盘,然后再验证磁盘上的数据。
在以前的版本中,WT 存储引擎的数据验证过程始终强制使用检查点。

db.collection.validate()方法是validate database command的包装。

Behavior

db.collection.validate()方法可能会占用大量资源,并且可能会影响 MongoDB 实例的性能。

db.collection.validate()方法获得对集合的排他锁。这将阻止对集合的所有读取和写入,直到操作完成。在辅助服务器上运行时,该操作可以阻止该辅助服务器上的所有其他操作,直到完成为止。

db.collection.validate()方法可能很慢,尤其是在较大的数据集上。

Note

由于validate扫描数据结构的方式,即使完全收集验证也无法检测到 MMAPv1 存储引擎数据文件上的所有损坏形式。

Examples

db.myCollection.validate()
db.myCollection.validate( { full: true } )

db.myCollection.validate(true)

有关输出的详细信息,请参见Validate Output

首页