RDS PostgreSQL的一鍵上雲功能支援將部署在ECS或IDC的自建PostgreSQL遷移到RDS PostgreSQL。本文介紹上雲前,如何配置自建PostgreSQL資料庫的postgresql.conf檔案。
操作步驟
本文以CentOS 7系統安裝PostgreSQL 13為例進行配置。
串連自建PostgreSQL,分別查看listen_addresses和wal_keep_segments/wal_keep_size的參數值。
參數
作用
查詢命令
期望值
listen_addresses
查看自建PostgreSQL是否允許被遠端連線。
SHOW listen_addresses;
*
wal_keep_segments
查看pg_wal目錄下所能保留的過去記錄檔段的最小數目,建議設定大於等於4096,防止全量備份完成之後由於源執行個體wal日誌被移除導致需要重新備份。適用於PostgreSQL 10、11、12。
SHOW wal_keep_segments;
4096
wal_keep_size
查看pg_wal目錄下所能保留的過去記錄檔段的最小大小,建議設定大於等於65536 MB,以防全量備份完成之後由於源執行個體wal日誌被移除導致需要重新備份。適用於PostgreSQL 13及以上版本。
SHOW wal_keep_size;
65536
停止PostgreSQL資料庫服務。
說明該命令需要使用
su - postgres
命令,切換至postgres使用者執行。/usr/pgsql-13/bin/pg_ctl stop -m fast
擷取postgresql.conf檔案位置。
說明該命令需要使用
su - root
命令,切換至root使用者執行。find / -name postgresql.conf
結果樣本:
/var/lib/pgsql/13/data/postgresql.conf
進入postgresql.conf檔案目錄。
cd /var/lib/pgsql/13/data/
使用
vim postgresql.conf
命令,編輯postgresql.conf檔案,分別修改listen_addresses和wal_keep_segments/wal_keep_size的參數值。listen_addresses = '*' # PostgreSQL 10、11、12修改 wal_keep_segments = 4096 # PostgreSQL 13及以上版本修改 wal_keep_size = 65536
說明參數可能預設被注釋,修改後注意刪除行首的
#
。按ECS,然後輸入
:wq
儲存修改並退出。啟動PostgreSQL資料庫服務。
說明該命令需要使用
su - postgres
命令,切換至postgres使用者執行。/usr/pgsql-13/bin/pg_ctl start