定義
db.fsyncUnlock()サーバーのロック数を減らして書込み操作を有効にします。
MongoDB 7.1 以降(7.0.2、6.0.11、5.0、22 以降でも利用可能)では、
db.fsyncLock()とdb.fsyncUnlock()メソッドをmongosで実行するて、シャーディングされたクラスターをロックおよびロック解除できます。重要
mongosh メソッド
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.データベースコマンドについては、
fsyncUnlockコマンドを参照してください。MongoDB API ドライバーについては、各言語の「MongoDB ドライバーのドキュメント」を参照してください。
Servers maintain an fsync lock count. The
fsyncLock()method increments the lock count while thefsyncUnlock()method decrements it. To unlock writes on a server or cluster, call thefsyncUnlock()method until the lock count reaches zero.db.fsyncUnlock()is an administrative operation. Use this method to unlock a server or cluster after a backup operationdb.fsyncUnlock()の構文は次のとおりです。db.fsyncUnlock() この操作は、次のフィールドを含むドキュメントを返します。
info操作のステータスに関する情報。
lockCount操作後にインスタンス上に残っているロックの数。
okステータス コード。
The
db.fsyncUnlock()method wraps thefsyncUnlockcommand.
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
重要
This command is not supported in MongoDB Atlas clusters. For information on Atlas support for all commands, see Unsupported Commands.
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
WiredTiger との互換性
db.fsyncLock()は、 cp 、 scp 、 tarなどの低レベルのバックアップ ユーティリティを使用してデータファイルを安全にコピーすることを保証します。 コピーされた ファイルを使用して開始されたmongodには、ロックされたmongodのユーザーが記述したデータと区別できないユーザーが記述したデータが含まれています。
ロックされた mongod のデータファイルは、ジャーナリング同期 や WiredTigerスナップショット などの操作によって変更される可能性があります。これは論理データ(例:クライアントがアクセスするデータ)では、一部のバックアップユーティリティがこれらの変更を検出して警告を発したり、エラーで失敗したりすることがあります。MongoDB- 推奨バックアップユーティリティと手順の詳細については、自己管理型配置のバックアップ メソッド を参照してください。
例
Consider a situation where db.fsyncLock() has been issued two times. The following db.fsyncUnlock() operation reduces the locks taken by db.fsyncLock() by 1:
db.fsyncUnlock()
この操作を実行すると次のドキュメントが返されます。
{ "info" : "fsyncUnlock completed", "lockCount" : Long(1), "ok" : 1 }
lockCountが 0 より大きいため、 mongodインスタンスは書き込みに対してロックされます。 インスタンスの書き込みロックを解除するには、 db.fsyncLock()を再度実行します。
db.fsyncUnlock()
この操作を実行すると次のドキュメントが返されます。
{ "info" : "fsyncUnlock completed", "lockCount" : Long(0), "ok" : 1 }
mongodインスタンスは書き込み用にロックが解除されています。