dbHash
定義
dbHash
Returns the hash values of the collections in a database and an MD5 value for these collections.
dbHash
is useful to compare databases acrossmongod
instances, such as across members of replica sets.
警告
The dbHash
command obtains a shared (S) lock on the
database, which prevents writes until the command completes.
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
重要
このコマンドは、M0、M2、M5、および Flex クラスターまたはサーバーレス インスタンスではサポートされていません。詳細については、「 サポートされていないコマンド 」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
db.runCommand( { dbHash: 1, collections: [ <collection1>, ... ] } )
コマンドフィールド
このコマンドは、次のフィールドを使用します。
フィールド | タイプ | 説明 |
---|---|---|
| Any type | The command to run. Specify any value. |
| 配列 | Optional. An array of collection names. Either specify the collections for which to return the hash values, or omit or specify an empty array to return the hash values for all collections in the database. |
動作
Non-Existent Collection
If a collection in the collections
array is non-existent,
dbHash
does not return a hash value for that collection.
制限事項
The dbHash
command no longer support afterClusterTime. As such, dbHash
cannot be associated
with causally consistent sessions.
Return Document
The command returns a document with the following fields:
フィールド | 説明 | |||||
---|---|---|---|---|---|---|
host | The host and port of the | |||||
| A document with the collections and their corresponding hash values.
| |||||
| An array that lists the capped collections. | |||||
| A document with the collections and their corresponding UUID values.
| |||||
| The aggregate hash value for these collections. | |||||
| Number of milliseconds to generate the hash. | |||||
ok operationTime $clusterTime | Returned with every command. See also 応答 for details. |
例
Return Hash Values for All Collections in a Database
The following example returns the hash value for all collections in the
database 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") } } }
Return Hash Values for Specified Collections in a Database
The following example returns the hash value for the collections inventory
and orders
in the database test
:
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") } } }