Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

setUserWriteBlockMode

項目一覧

  • 定義
  • 互換性
  • 構文
  • コマンドフィールド
  • 必要なアクセス権
setUserWriteBlockMode

バージョン 6.0 で追加。

setUserWriteBlockModeコマンドは、クラスター全体への書込みのブロックとブロック解除を実行します。

Cluster-to-Cluster Sync中に、クラスタ間同期ツールである mongosyncsetUserWriteBlockMode コマンドを使用して宛先クラスターへの書込みをブロックします。 詳しくは、 HTTP API startコマンドを参照してください。

注意

bypassWriteBlockingMode特権を持つユーザーとアプリケーションは、ブロックをバイパスして書込みを引き続き実行できます。

このコマンドは、次の環境でホストされている配置で使用できます。

  • MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン

  • MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン

重要

このコマンドは、 MongoDB Atlasクラスターではサポートされていません。 すべてのコマンドの Atlas サポートの詳細については、「 サポートされていないコマンド 」を参照してください。

このコマンドの構文は、次のとおりです。

db.adminCommand(
{
setUserWriteBlockMode: 1,
global: <boolean>
}
)

このコマンドは、次のフィールドを使用します。

フィールド
タイプ
説明
setUserWriteBlockMode
integer
このフィールドを1に設定します。
global
ブール値
trueに設定すると、クラスターへの書込みがブロックされます。 クラスターで書込みを有効にするには、 global: falseを設定します。

setUserWriteBlockModeコマンドを実行するには、ユーザーにsetUserWriteBlockMode特権が必要です。

  1. ユーザー書込みブロック モードを有効にします。

    db.adminCommand( {
    setUserWriteBlockMode: 1,
    global: true
    } )
  2. コレクションにレコードを追加します。

    db.names.insertOne( { name: "George Washington Cable" } )

    ユーザーの書込みブロックが有効になっているため、サーバーは書込みをブロックします。

    出力例:

    MongoServerError: User writes blocked
  3. ユーザーの書込みブロック モードを無効にします。

    db.adminCommand( {
    setUserWriteBlockMode: 1,
    global: false
    } )
  4. コレクションにレコードを追加します。

    db.names.insertOne( { name: "George Washington Cable" } )

    insertOne()メソッドはコレクションに書き込みます。 ユーザーの書込みブロックが無効になっているため、サーバーは書込みを許可します。

戻る

setQuerySettings