下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當前位置:軟件下載吧 > 技術(shù)開發(fā) > 數(shù)據(jù)庫 > pgsql之pg_stat_replication的使用詳解

          pgsql之pg_stat_replication的使用詳解

          時間:2024-02-28 13:28作者:下載吧人氣:25

          pg_stat_replication是一個視圖,主要用于監(jiān)控一個基于流的設置,建議您 注意系統(tǒng)上稱作pg_stat_replication的視圖。(注:當前版本為pg 10.0,10.0以下版本,字段名會有差異)此視圖包含以下信息:

          d pg_stat_replication

          pgsql之pg_stat_replication的使用詳解

          每個字段代碼的含義:

          pid 這代表負責流連接的wal_sender進程的進程ID。如果您在您的操作系統(tǒng)上檢查您進程表,您應該會找到一個帶有那個號碼的PostgreSQL進程。

          usesysid 每個內(nèi)部用戶都有一個獨一無二的編號。該系統(tǒng)的工作原理很像UNIX。 usesysid 是 (PostgreSQL) 用戶連接到系統(tǒng)的唯一標識符。

          usename  (不是用戶名, 注意少了 r)它存儲與用戶相關(guān)的 usesysid 的名字。這是客戶端放入到連接字符串中的東西。

          application_name這是同步復制的通常設置。它可以通過連接字符串傳遞到master。

          client_addr它會告訴您流連接從何而來。它擁有客戶端的IP地址。

          client_hostname除了客戶端的IP,您還可以這樣做,通過它的主機名來標識客戶端。您可以通過master上的postgresql.conf中的log_hostname啟用DNS反向查找。

          client_port這是客戶端用來和WALsender進行通信使用的TPC端口號。 如果不本地UNIX套接字被使用了將顯示-1。

          backend_start它告訴我們slave什么時間創(chuàng)建了流連接。

          state此列告訴我們數(shù)據(jù)的連接狀態(tài)。如果事情按計劃進行,它應該包含流信息。

          sent_lsn這代表發(fā)送到連接的最后的事務日志的位置。

          write_lsn這是寫到standby系統(tǒng)磁盤上最后的事務日志位置。

          flush_lsn這是被刷新到standby系統(tǒng)的最后位置。(這里注意寫和刷新之間的區(qū)別。寫并不意味著刷新 。)

          replay_lsn這是slave上重放的最后的事務日志位置。

          sync_priority這個字段是唯一和同步復制相關(guān)的。每次同步復制將會選擇一個優(yōu)先權(quán) —sync_priority—會告訴您選擇了那個優(yōu)先權(quán)。

          sync_state最后您會看到slave在哪個狀態(tài)。這個狀態(tài)可以是

          async, sync, or potential。當有一個帶有較高優(yōu)先權(quán)的同步slave時,PostgreSQL會把slave 標記為 potential。

          在這個系統(tǒng)視圖中每個記錄只代表一個slave。因此,可以看到誰處于連接狀態(tài),在做什么任務。pg_stat_replication也是檢查slave是否處于連接狀態(tài)的一個好方法。

          上面說到pid代表負責流連接的wal_sender進程的進程ID,我們在機器上通過ps命令查看該進程的狀態(tài):

          ps -aux|grep 8225

          pgsql之pg_stat_replication的使用詳解

          在Linux上我們可以看到那個進程不僅有自己的作用 (在這種情況下, wal_sender),而且還帶有終端用戶的名字以及相關(guān)的網(wǎng)絡連接信息。在上圖中我們可以看到已經(jīng)有人從192.168.47.127(對應pg_stat_replication的client_addr字段)通過51519(對應pg_stat_replication的client_port字段))端口連接到了master。

          bonus:

          上面我們提到replay_lsn是slave上重放的最后的事務日志位置。

          pg_current_wal_lsn()函數(shù)的作用是獲取當前的wal log的寫位置。

          pg_wal_lsn_diff()函數(shù)的作用是計算兩個wal日志之間的差距。

          所以我們可以通過下面的方法獲取高可用架構(gòu)下從庫的復制延遲情況:

          SELECT
          pg_wal_lsn_diff(A .c1, replay_lsn) /(1024 * 1024) AS slave_latency_MB
          FROM
          pg_stat_replication,
          pg_current_wal_lsn() AS A(c1)
          WHERE client_addr=’%s’ and application_name = ‘%s’
          ORDER BY
          slave_latency_MB
          LIMIT 1;

          標簽[db:關(guān)鍵字]

          相關(guān)下載

          查看所有評論+

          網(wǎng)友評論

          網(wǎng)友
          您的評論需要經(jīng)過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 亚洲国产精品一区二区三区在线观看 | 男人的天堂精品国产一区| 国产在线精品一区二区在线看 | 亚洲午夜精品一区二区麻豆 | 蜜桃传媒一区二区亚洲AV| 亚洲国产精品一区二区三区在线观看| 国产丝袜无码一区二区三区视频| 国产一区二区三区播放心情潘金莲 | 国内精品一区二区三区最新| 亚洲一区二区三区91| 久久久无码精品国产一区| 国产成人无码AV一区二区| 一区二区三区精品高清视频免费在线播放| 99久久精品国产免看国产一区| 日本丰满少妇一区二区三区| 国产精品盗摄一区二区在线| 国产一区二区在线观看| 另类ts人妖一区二区三区| 成人国产精品一区二区网站公司| 91福利视频一区| 男女久久久国产一区二区三区| 熟妇人妻AV无码一区二区三区| 色欲精品国产一区二区三区AV| 国产另类TS人妖一区二区| 国偷自产一区二区免费视频| 亚洲AV福利天堂一区二区三| 国产爆乳无码一区二区麻豆| 无码人妻视频一区二区三区| 香蕉一区二区三区观| 国产另类ts人妖一区二区三区| 熟妇人妻一区二区三区四区| 亚洲老妈激情一区二区三区| 无码一区二区三区免费| 91精品乱码一区二区三区| 国产Av一区二区精品久久| 无码国产亚洲日韩国精品视频一区二区三区| 国产精品日韩一区二区三区| 中文字幕一区二区三区视频在线| 亚洲一区二区三区偷拍女厕| 精品爆乳一区二区三区无码av| 无码精品不卡一区二区三区|