tpaexec switchover
==================

``tpaexec switchover`` コマンドは、
:ref:`M1 <M1>` のプライマリとレプリカの間で制御されたスイッチオーバーを実行します。このコマンドを実行すると、選択したレプリカが新しいプライマリに昇格し、元のプライマリは新しいレプリカになり、クラスター内の他のレプリカは新しいプライマリに従うように再構成されます。

このコマンドは、ロールを切り替える前にクラスターが正常であることを確認し、事前にrepmgrサービスをシャットダウンせずに実行されるように設計されています。

これは、 ``--siblings-follow``
オプションを指定して\ ``repmgr standby switchover``
を実行することと同じです。

例
--

このコマンドは、 ``replicaname`` を\ ``~/clusters/speedy``
の新しいプライマリにします。

.. code:: shell

   tpaexec switchover ~/clusters/speedy replicaname

アーキテクチャオプション
------------------------

このコマンドは :ref:`M1 <M1>` にのみ適用されます

1つの書き込み可能なプライマリインスタンスと1つ以上の読み取り専用レプリカがあります。

BDR-Always-ONクラスターの場合、
:ref:`BDR/HAProxy server pool management <BDR/HAProxy server pool management>` を使用してPGDインスタンスのメンテナンスを実行します。

Repmgrリダイレクトpgbouncer
---------------------------

repmgrをフェールオーバーマネージャーとして、pgbouncerを接続プーラーとして使用し、\ ``repmgr_redirect_pgbouncer: true``
を設定している場合、switchoverコマンドは、pgbouncerインスタンスが新しいプライマリノードにリダイレクトされます。

..  Note Revert to initial primary::
   すでに別のプライマリにスイッチオーバーしている場合、コマンドで`revert_redirect: true` を指定して、初期プライマリにスイッチして、初期pgbouncer構成ファイルを再生成する代わりに初期pgbouncer構成ファイルを利用できます。 TPAは、スイッチオーバー中にこの構成ファイルの初期状態を`pgbouncer.databases.ini.orig` として保存し、最初のプライマリに戻るときにそれに戻すことができます

.. code:: shell

       # switchover to a replica
       tpaexec switchover <cluster_name> <replica_name>
       # revert to initial primary
       tpaexec switchover <cluster_name> <initial_primary_name> -e"revert_redirect=true"
