ページの先頭行へ戻る
Enterprise Postgres 15 クラスタ運用ガイド(データベース多重化編)

3.2 Mirroring Controllerの起動と停止

データベース多重化運用を行う場合は、mc_ctlコマンドを使用してインスタンスとMirroring Controllerを同時に起動・停止してください。

なお、インスタンスだけを起動・停止しないでください。

Mirroring Controllerの起動

Mirroring Controllerが未起動の状態で、mc_ctlコマンドをstartモードで実行して、Mirroring Controllerを起動します。

自動切り替え/切り離しを有効化する場合

mc_ctlコマンドのstartモードを実行してください。

例)
$ mc_ctl start -M /mcdir/inst1

インスタンスのみを起動・停止した場合には、以下の影響があります。

  • インスタンスのみを起動した場合

    Mirroring Controllerが起動されるまでのあいだ、自動切り替え/自動切り離しなどの機能は動作できません。

  • インスタンスのみを停止した場合

    Mirroring Controllerがインスタンスに異常が発生したと判断して、不必要な自動切り替えを行ってしまいます。

    また、自動切り替えが正常に動作しなくなる場合があります。

自動切り替え/切り離しを有効化しない場合

mc_ctlコマンドのstartモードに-Fオプションを指定して実行してください。

例)
$ mc_ctl start -M /mcdir/inst1 -F

インスタンスのみを起動・停止した場合には、以下の影響があります。

  • インスタンスのみを起動した場合

    Mirroring Controllerが起動されるまでのあいだ、“1.1 データベース多重化運用とは”に示す異常を検知できません。

  • インスタンスのみを停止した場合

    Mirroring Controllerがインスタンスに異常が発生したと判断して、システムログにエラーを出力してしまいます。

ポイント

  • Mirroring Controllerのプロセスのみを起動する場合には、mc_ctlコマンドのstartモードに--mc-onlyオプションを指定することで行えます。

  • 自動切り替え/切り離しはMirroring Controllerが起動したあとに、mc_ctlコマンドのenable-failoverモード、または、disable-failoverモードを使用することにより自動切り替え/切り離しを有効、または無効にすることが可能です。

  • 裁定サーバを利用して自動縮退を行う運用では、事前に裁定サーバでMirroring Controller裁定プロセスを起動していない場合、データベースサーバのMirroring Controllerプロセスの起動が失敗します。ただし、事前にMirroring Controller裁定プロセスを起動できない場合であっても、mc_ctlコマンドに--async-connect-arbiter オプションを指定することで、Mirroring Controllerプロセスを起動することができます。

注意

  • 裁定サーバを利用して自動縮退を行う運用の場合、データベースサーバが裁定サーバに接続する時間が加算されるため、裁定サーバを利用しない運用に比べて、Mirroring Controllerの起動時間が長く掛かる場合があります。

  • セットアップ直後に、スタンバイサーバを誤ってプライマリサーバとして起動した場合や、切り替えが行われた後の旧プラマリサーバを復旧せずに、誤ってプライマリサーバとして起動した場合、通常はMirroring Controllerの起動が失敗しますが、万が一、管理用ネットワークが切断されていると起動を失敗させることができず、両サーバがプライマリサーバとなってしまう可能性があります。そのため、Mirroring Controllerの起動は、管理用ネットワークが接続していることを確認してから行ってください。

Mirroring Controllerの停止

Mirroring Controllerが起動された状態で、mc_ctlコマンドをstopモードで実行して、Mirroring Controllerを停止します。

例)
$ mc_ctl stop -M /mcdir/inst1

ポイント

Mirroring Controllerのプロセスのみを停止する場合には、mc_ctlコマンドのstopモードに--mc-onlyオプションを指定することで行えます。

注意

意図しない自動切り替えを発生させないためには、プライマリサーバのOSをシャットダウンする前に、必ずMirroring Controllerを停止するか、またはスタンバイサーバのOSをシャットダウンしてください。

参照

mc_ctlコマンドの指定方法の詳細については、“リファレンス”を参照してください。