Polardb-O資料庫歸檔配置

jaymarco發表於2020-11-13

一、歸檔配置

、建立歸檔目錄

# su - polardb
$ mkdir   -p /home/{backups,archive_wals}

 2  、開啟歸檔引數

alter system set wal_level = 'replica';
alter   system set wal_keep_segments=10;
alter   system set archive_mode = on;
alter   system set archive_command  ='test ! -f   /home/archive_wals/%f && pfs cp -S disk /vda/data/pg_wal/%f   /home/archive_wals/%f   ';
select   pg_reload_conf();

引數說明:
wal_level
決定多少資訊寫入到 WAL 中。預設值是replica,它會寫入足夠的資料以支援WAL歸檔和複製,包括在後備伺服器上執行只讀查詢。minimal會去掉除從崩潰或者立即關機中進行恢復所需的資訊之外的所有記錄。最後,logical會增加支援邏輯解碼所需的資訊。每個層次包括所有更低層次記錄的資訊。這個引數只能在伺服器啟動時設定。
wal_keep_segments
指定在後備伺服器需要為流複製獲取日誌段檔案的情況下,pg_wal目錄下所能保留的過去日誌檔案段的最小數目。每個段通常是 16 兆位元組。如果一個連線到傳送伺服器的後備伺服器落後了超過wal_keep_segments個段,傳送伺服器可以移除一個後備機仍然需要的 WAL 段,在這種情況下複製連線將被中斷。最終結果是下行連線也將最終失敗(不過,如果在使用 WAL 歸檔,後備伺服器可以透過從歸檔獲取段來恢復)。
archive_mode 
當啟用archive_mode時,可以透過設定 archive_command命令將完成的 WAL 段傳送到 歸檔儲存。除用於禁用的off之外,還有兩種模式: on和always。在普通操作期間,這兩種模式之間 沒有區別,但是當設定為always時,WAL 歸檔器在歸檔恢復 或者後備模式下也會被啟用。在always模式下,所有從歸檔恢復 的或者用流複製傳來的檔案將被(再次)歸檔。
archive_command
本地shell命令被執行來歸檔一個完成的 WAL 檔案段。字串中的任何%p被替換成要被歸檔的檔案的路徑名,而%f只被檔名替換(路徑名是相對於伺服器的工作目錄, 即集簇的資料目錄)。如果要在命令裡嵌入一個真正的%字元,可以使用%%。有一點很重要,該命令只在成功時返回一個零作為退出狀態。

、啟動資料庫

# su - polardb
$   pg_ctl restart -m fast

   說明:開啟歸檔操作需要重啟資料庫。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28833846/viewspace-2734059/,如需轉載,請註明出處,否則將追究法律責任。

相關文章