rs.slaveOk()
MongoDB レプリカ セットのスレーブ メンバーに対する読み取り操作を有効にします。
それを無効にするために使用される機能は何ですか?
rs.slaveOk()
MongoDB レプリカ セットのスレーブ メンバーに対する読み取り操作を有効にします。
それを無効にするために使用される機能は何ですか?
と入力するだけですrs.slaveOk(false)
。
シェルでは、各コマンドに対して実行されるコードが何であるかを確認できるため、rs.slaveOk
(括弧なしで) 入力すると、次のようになります。
rs.slaveOk
function (value) {
return db.getMongo().setSlaveOk(value);
}
slaveOk
実際には、ブール値のパラメーターを受け入れて を呼び出す関数もあり、これsetSlaveOk
は次のコードで構成されています。
db.getMongo().setSlaveOk
function (value) {
if (value == undefined)
value = true;
this.slaveOk = value;
}
ご覧のとおりsetSlaveOk
、true
デフォルト値なので、false を指定することでセカンダリからの読み取りを防ぐことができます。
編集: 以下のコメントで dAm2K によって正確に述べられているように、rs.slaveOk
MongoDB のバージョン 4.4 から廃止されました。そのまま使用してrs.secondaryOk
ください。