ページの先頭行へ戻る
Symfoware Server V12.1.0 クラスタ運用ガイド
FUJITSU Software

7.2 データベース多重化運用の状態確認

多重化したデータベースの状態は、mc_ctlコマンドをstatusモードで実行することで確認します。

また、Mirroring Controllerのメッセージを監視することで異常を検知できます。定期的に状態やメッセージを監視すると、自動切り替えに失敗した場合にも迅速に対処できます。

mc_ctlコマンドを実行すると、多重化の構成の内容、異常が発生したときに切り替えが可能な状態であるかの情報、および切り替えや切り離しの原因となった異常の箇所と内容を表示します。データベース多重化運用を開始したあとは、mc_ctlコマンドのstatusモードで多重化の状態を確認するようにしてください。

mc_ctlコマンドを実行した場合の状態表示例を以下に示します。

例)
$ mc_ctl status -M /mcdir/inst1

mirroring status
----------------
switchable
server_id  host_role       host            host_status  db_proc_status         disk_status
--------------------------------------------------------------------------------------------------------
nd1        primary         192.0.2.100     normal       normal                 normal
nd2        standby         192.0.2.110     normal       normal                 normal

また、プライマリサーバにおいて統計情報ビューpg_stat_replicationを参照することで、データの同期の状況を確認できます。ただし、監視プログラムを作成する場合には、pg_stat_replicationが将来変更される可能性がある点に注意してください。

次の例は、送信と受信後のトランザクションログの位置(sent_location, replay_location)が一致しており、同期が完全に行われている状態を示しています。

例)
postgres=# select * from pg_stat_replication;
-[ RECORD 1 ]----+------------------------------
pid              | 16706
usesysid         | 10
usename          | symfo
application_name | standby1
client_addr      | 192.0.2.210
client_hostname  |
client_port      | 26500
backend_start    | 2014-04-25 14:21:30.097644+09
state            | streaming
sent_location    | 0/3003C30
write_location   | 0/3003C30
flush_location   | 0/3003C30
replay_location  | 0/3003C30
sync_priority    | 1
sync_state       | sync

参照

  • mc_ctlコマンドの詳細は、“リファレンス”の“mc_ctl”を参照してください。

  • アプリケーションの互換性の維持に関する詳細は、“アプリケーション開発ガイド”の“アプリケーションの互換に関する注意事項”を参照してください。

  • pg_stat_replicationの詳細は、“PostgreSQL文書”の“サーバの管理”の“統計情報コレクタ”を参照してください。