您可以使用 Replication Manager 工具套件和 PostgreSQL 互動式終端機,檢查資料庫高可用性叢集中的個別節點的複寫狀態。

程序

  1. root 身分登入或使用 SSH 登入叢集中任何執行中節點的作業系統。
  2. 將使用者變更為 postgres
    sudo -i -u postgres
  3. 檢查節點的複寫狀態。
    /opt/vmware/vpostgres/current/bin/repmgr -f /opt/vmware/vpostgres/current/etc/repmgr.conf node status
    主要節點的系統輸出提供有關節點、PostgreSQL 版本以及複寫詳細資料的資訊。例如:
    Node "bos1-vcloud-static-161-5":
            PostgreSQL version: 10.9
            Total data size: 81 MB
            Conninfo: host=172.18.36.193 user=repmgr dbname=repmgr connect_timeout=2
            Role: primary
            WAL archiving: off
            Archive command: (none)
            Replication connections: 2 (of maximal 10)
            Replication slots: 0 physical (of maximal 10; 0 missing)
            Replication lag: n/a
    
    待命節點的系統輸出提供有關節點、PostgreSQL 版本、複寫詳細資料和上游節點的資訊。例如:
    Node "bos1-vcloud-static-161-49":
        PostgreSQL version: 10.9
        Total data size: 83 MB
        Conninfo: host=172.18.36.191 user=repmgr dbname=repmgr connect_timeout=2
        Role: standby
        WAL archiving: off
        Archive command: (none)
        Replication connections: 0 (of maximal 10)
        Replication slots: 0 physical (of maximal 10; 0 missing)
        Upstream node: bos1-vcloud-static-161-48 (ID: 683)
        Replication lag: 0 seconds
        Last received LSN: 2/D863B4E0
        Last replayed LSN: 2/D863B4E0
  4. (選擇性) 如需更多詳細資訊,請使用 PostgreSQL 互動式終端機檢查節點的複寫狀態。
    PostgreSQL 互動式終端機可提供有關待命節點的任何已接收記錄是否落後於主要節點所傳送記錄的資訊。
    1. 連線至 psql 終端機
      /opt/vmware/vpostgres/current/bin/psql
    2. 若要展開顯示並使查詢結果更易於讀取,請執行 set \x 命令。
    3. 根據節點的角色執行複寫狀態查詢。
      選項 動作

      在主要節點上執行查詢。

      select* from pg_stat_replication;

      在待命節點上執行查詢。

      select* from pg_stat_wal_receiver;