参考 > 参考 > 数据库命令 > 诊断命令 > dbHash
在本页面
dbHash
返回数据库中集合的哈希值和这些集合的MD5值。dbHash对于跨mongod实例(例如跨副本集的成员)比较数据库很有用。
mongod
dbHash 具有以下语法:
db.runCommand ( { dbHash: 1, collections: [ <collection1>, ... ] } )
collections
可选的。集合名称的数组。
指定要为其返回哈希值的集合,或者省略或指定一个空数组以返回数据库中所有集合的哈希值。
如果collections数组中的集合不存在, dbHash则不返回该集合的哈希值。
MongoDB驱动程序会自动将afterClusterTime设置为与因果一致的会话相关联的操作。从MongoDB 4.2开始,该 dbHash命令不再支持afterClusterTime。因此,dbHash不能与因果一致的会话相关联。
该命令返回包含以下字段的文档:
包含集合及其相应哈希值的文档。
{ <collection1>: <hash1>, <collection2>: <hash2>, ... }
capped
列出上限集合的数组。
版本4.0中的新功能。
uuids
包含集合及其相应UUID值的文档。
{ <collection1>: <UUID1>, <collection2>: <UUID2>, ... }
md5
timeMillis
ok
operationTime
$clusterTime
以下示例返回数据库中所有集合的哈希值test:
test
use test db.runCommand( { dbHash: 1 } )
该操作返回以下文档:
{ "host" : "myHostName.local:27017", "collections" : { "foo" : "d27b769230edc551d869060ec3fb68bd", "inventory" : "ec3d821581ea1bd3aa8196c94b946874", "log" : "d41d8cd98f00b204e9800998ecf8427e", "orders" : "0242c0a128c284ea9576a34db2306c12", "restaurants" : "5dc9b88091c36f0d529567b5b6e3fc92", "zipcodes" : "31ede812bf397509a87359c65bf2a08c" }, "capped" : [ "log" ], "uuids" : { "foo" : UUID("469592fe-3bfe-425e-975f-cedbe0c4741d"), "inventory" : UUID("0830e0ad-cc24-4fc7-80d0-8e22fe45e382"), "log" : UUID("4be024ff-711b-4ab8-836b-dee662e090f1"), "orders" : UUID("755be489-745f-400c-ac3b-f27525ad0108"), "restaurants" : UUID("520b56ec-3276-4904-b6e5-286bc9bfa648"), "zipcodes" : UUID("12e97b70-c174-40af-a178-5d83a241fe20") }, "md5" : "0cb7417ae9d9eb865000b4debdc671da", "timeMillis" : 53, "ok" : 1, "operationTime" : Timestamp(1529208582, 4), "$clusterTime" : { "clusterTime" : Timestamp(1529208582, 4), "signature" : { "hash" : BinData(0,"X3MmevDqUgCVvN1AhnT+fiOL/Lc="), "keyId" : NumberLong("6567898567824900097") } } }
下面的示例返回集合的哈希值inventory ,并orders在数据库中test:
inventory
orders
use test db.runCommand( { dbHash: 1, collections: [ "inventory", "orders" ] } )
{ "host" : "myHostName.local:27017", "collections" : { "inventory" : "ec3d821581ea1bd3aa8196c94b946874", "orders" : "0242c0a128c284ea9576a34db2306c12" }, "capped" : [ ], "uuids" : { "inventory" : UUID("0830e0ad-cc24-4fc7-80d0-8e22fe45e382"), "orders" : UUID("755be489-745f-400c-ac3b-f27525ad0108") }, "md5" : "cb4676f316ff2ff29c701a5edd18afe3", "timeMillis" : 0, "ok" : 1, "operationTime" : Timestamp(1529208801, 1), "$clusterTime" : { "clusterTime" : Timestamp(1529208801, 1), "signature" : { "hash" : BinData(0,"I4z4a4Mgs+tcx0MP5xIU8DYAMB0="), "keyId" : NumberLong("6567898567824900097") } } }