システムビューpgx_stat_replication_tablesを参照することで、レプリケーションの反映状況を確認できます。中央管理ノード上でのみ参照できます。
pgx_stat_replication_tablesは、pg_stat_replicationを拡張したビューです。pg_stat_replicationのカラムに以下のカラムが追加されています。
名前 | 型 | 参照先 | 説明 |
---|---|---|---|
nodeid | oid | pgx_pgxnode.oid | データノードのOIDです。 |
nodename | name | pgx_pgxnode.srvname | データノードの名前です。 |
以下に反映状況を確認する例を示します。
データノードが2台(node1,node2)存在し、レプリケーションテーブルが定義されている場合 db1=# SELECT nodename, state FROM pgx_stat_replication_tables; nodename | state ----------+-------------- node1 | streaming node2 | streaming (2 rows)
stateがstreamingになっていれば、そのアプリケーションに対応したテーブルのレプリケーションは正常に反映されています。
streaming以外の値の意味は、“PostgreSQL Documentation”の“pg_stat_replication”を確認してください。
また、NULLだった場合はレプリケーションが確立していないことを表しています。定期的に上記SQL結果を監視することで、レプリケーションテーブルの状態を確認してください。