PG複製引數

2021-08-01 16:28:45 字數 1803 閱讀 2062

複製引數

流複製-單向複製

級聯複製-雙向複製

下面說流複製的引數

1、傳送伺服器

max_wal_senders(integer)

指定來自備用伺服器或流基礎備份客戶端的併發連線的最大數目(即同時運 行 wal 傳送者程序的最大數目)。預設值是零,這意味著禁用複製。此引數不能高於max_connections。這個引數只能在伺服器啟動時設定,wal_level必須設定為archive或者更高允許來自備用伺服器的連線。

wal_keep_segments(integer)

宣告 pg_xlog 目錄下所能保留的舊日誌檔案段的最小數目,備伺服器需要獲 取它們進行流複製。每個檔案正常是 16m。如果乙個備伺服器連線主伺服器時少 於 wal_keep_segments 段,主伺服器會向備伺服器傳送乙個其仍需要的 wal,此 時複製連線將被終止。(然而,備伺服器可以從歸檔中獲得段來恢復,如果使用 wal 歸檔的話).

replication_timeout(integer)

終止比指定毫秒數閒置更長時間的複製連線。零值將禁用超時機制。此引數只能在 postgresql.conf 檔案或伺服器命令列上設定。預設值是 60 秒。為了避免過早中斷 連線 ,在備用伺服器上必須啟動wal_receiver_status_interval引數,並且其值必須小於 replication_timeout 的值。

2、主伺服器

synchronous_standby_names(string)

指定用逗號分隔的備用名稱列表,可以支援同步複製。任何乙個時間將至多 有乙個活躍同步備用; 這個備用伺服器確認收到他們的資料後,等待提交事務將 被允許進行。。如果無論出於何種原因當前同步待機斷開,

那麼它會立即被下乙個最高優先順序的替換。指定多個備用名可以有非常高的可用性。

vacuum_defer_cleanup_age(integer)

指定由 vacuum 和 hot 更新的事務數將延遲死行版本的清理。 該預設值 是零事務,這意味著死行版本可以盡快刪除,也就是說,只要他們不再可見於任 何開啟的事務。

3、備用伺服器

hot_standby(boolean)

宣告在恢復期間,能不能進行連線進行查詢。預設值是 off。這個引數只能 在伺服器啟動時設定。這個引數只有在歸檔恢復或 standby 模式下才有用。 

max_standby_archive_delay(integer) 

當啟用熱備時,這個引數決定在取消備庫查詢(與 wal 應用條目衝突)之 前,備伺服器會等待多長時間。當 wal 資料正在從 wal 歸檔中(非當前)讀 取時,會應用 max_standby_archive_delay。預設是 30s。如果沒宣告,單位是毫 秒。當值是-1 時,表示允許備伺服器一直等待,直到衝突結束。這個引數只能在 postgresql.conf 檔案中,或伺服器命令列中設定。 注意,max_standby_archive_delay 不同於在取消之前,乙個查詢鎖能執行的 最長時間;相反,它是最大的總時間允許,適用於任何乙個 wal 段資料。因此, 在 wal 段之前,如果乙個查詢造成明顯的延遲,隨後的衝突查詢將有很少的允 許時間。 

wal_receiver_status_interval(integer)

指定 wal 接收的最小頻率,處理備庫上傳送有關複製程序資訊到主或上游 待機狀態,在那裡可以使用可見的 pg_stat_replication 檢視。待機會報告它已寫入 的最後乙個事務日誌的位置,最後乙個位置已經重新整理到磁碟中,並已申請最後位

置。此引數值的最大時間間隔,以秒為單位。

hot_standby_feedback(boolean) 

指定熱備是否將傳送反饋到主或有關查詢當前正在備機上執行的上游備機。 

pg流複製部署實踐

流複製是pg資料庫9.0後面版本新增的功能,基本原理是從伺服器連線到主伺服器,主伺服器在wal記錄產生時就將它們以流式傳送到從伺服器中,而不必等到wal日誌檔案被填充。預設情況下,流複製是非同步的,在這種情況下,主伺服器提交乙個事務與該變化在從伺服器上變得可見之間存在短暫的延遲,不過這種延遲比基於檔...

PG引數調優

修改方式 alter system set configuration parameter 檢視方式 show all show value max connections 預設值是100。fsync 預設值是on,強制把資料同步到磁碟。shared buffers 預設值是24m,決定有多少記憶體...

PG修改引數方法

1.檢視引數檔案位置postgres show config file config file data pgsql data postgresql.conf 1 row postgres show hba file hba file data pgsql data pg hba.conf 1 ro...