On this page本页内容
db.stats(scale)
Returns statistics that reflect the use state of a single database.返回反映单个数据库使用状态的统计信息。
The db.stats()
method is a wrapper around the dbStats
database command.db.stats()
方法是dbStats
数据库命令的包装器。
The db.stats()
method has the following optional parameters:db.stats()
方法具有以下可选参数:
scale | number |
|
freeStorage | number |
|
The db.stats()
method returns a document with statistics about the database system's state. db.stats()
方法返回一个包含数据库系统状态统计信息的文档。A complete listing, including freeStorage details, resembles the following:包括freeStorage
详细信息在内的完整列表如下所示:
{ db: 'test', collections: 2, views: 0, objects: 1689, avgObjSize: 52.56542332741267, dataSize: 86.7021484375, storageSize: 100, freeStorageSize: 32, indexes: 2, indexSize: 116, indexFreeStorageSize: 36, totalSize: 216, totalFreeStorageSize: 68, scaleFactor: 1024, fsUsedSize: 60155820, fsTotalSize: 61255492, ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1646085664, i: 1 }), signature: { hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0), keyId: Long("0") } }, operationTime: Timestamp({ t: 1646085664, i: 1 }) }
After an unclean shutdown of a 在使用Wired Tiger存储引擎不干净地关闭mongod
using the Wired Tiger storage engine, count and size statistics reported by db.stats()
may be inaccurate.mongod
之后,db.stats()
报告的计数和大小统计可能不准确。
The amount of drift depends on the number of insert, update, or delete operations performed between the last checkpoint and the unclean shutdown. 漂移量取决于在最后一个检查点和不干净关闭之间执行的插入、更新或删除操作的数量。Checkpoints usually occur every 60 seconds. 检查点通常每60秒进行一次。However, 然而,使用非默认的mongod
instances running with non-default --syncdelay
settings may have more or less frequent checkpoints.--syncdelay
设置运行的mongod
实例可能有或多或少的检查点。
Run 在validate
on each collection on the mongod
to restore statistics after an unclean shutdown.mongod
上的每个集合上运行validate
,以在非干净关闭后恢复统计信息。
After an unclean shutdown:非清洁停机后:
Starting in MongoDB 4.4, to run on a replica set member, 从MongoDB 4.4开始,要在副本集成员上运行,dbStats
operations require the member to be in PRIMARY
or SECONDARY
state. dbStats
操作要求该成员处于PRIMARY
或SECONDARY
状态。If the member is in another state, such as 如果成员处于其他状态,如STARTUP2
, the operation errors.STARTUP2
,则操作出错。
In previous versions, the operations can also be run when the member is in 在以前的版本中,也可以在成员处于STARTUP2
. STARTUP2
时运行操作。However, the operations wait until the member transitions to 但是,这些操作将一直等到成员转换到RECOVERING
.RECOVERING
。
To to return values in kilobytes, set the scale to 要返回以KB为单位的值,请将1024
:scale
设置为1024
:
db.stats(1024)
The scale factor rounds values to whole numbers.比例因子将值舍入为整数。
To return a single value, such as 要返回单个值,例如indexSize
, append the field name to db.stats()
.indexSize
,请将字段名附加到db.stats()
。
db.stats().indexSize
db.stats(1024).indexSize
The output shows the difference between the original and scaled values.输出显示原始值和缩放值之间的差异。
118784 116
To return information on free space allocated to collections, pass the freeStorage parameter to 要返回有关分配给集合的可用空间的信息,请将db.stats()
.freeStorage
参数传递给db.stats()
。
The following example returns the 以下示例以KB为单位返回indexFreeStorageSize
in kilobytes:indexFreeStorageSize
:
db.stats( { freeStorage: 1, scale: 1024 } ).indexFreeStorageSize