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目录下所能保留的过去日志文件段的最小大小,建议设置大于等于64 GB,防止全量备份完成之后由于源实例wal日志被移除导致需要重新备份。
说明适用于PostgreSQL 13、14和15。
SHOW wal_keep_size;
64GB
停止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、14修改 wal_keep_size = 65536
说明参数可能默认被注释,修改后注意删除行首的
#
。按ECS,然后输入
:wq
保存修改并退出。启动PostgreSQL数据库服务。
说明该命令需要使用
su - postgres
命令,切换至postgres用户执行。/usr/pgsql-13/bin/pg_ctl start