配置postgresql.conf文件

RDS PostgreSQL的一键上云功能支持将部署在ECS或IDC的自建PostgreSQL迁移到RDS PostgreSQL。本文介绍上云前,自建PostgreSQL数据库postgresql.conf文件中的参数配置。

操作步骤

说明

本文以CentOS 7系统安装PostgreSQL 13为例进行配置。

  1. 连接自建PostgreSQL,分别查看listen_addresseswal_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.conf文件,执行创建迁移账号

    • 如果查询结果不满足期望,则执行步骤2

  2. 停止PostgreSQL数据库服务。

    说明

    该命令需要使用su - postgres命令,切换至postgres用户执行。

    /usr/pgsql-13/bin/pg_ctl stop -m fast
  3. 获取postgresql.conf文件位置。

    说明

    该命令需要使用su - root命令,切换至root用户执行。

    find / -name postgresql.conf

    结果示例:

    /var/lib/pgsql/13/data/postgresql.conf
  4. 进入postgresql.conf文件目录。

    cd /var/lib/pgsql/13/data/
  5. 使用vim postgresql.conf命令,编辑postgresql.conf文件,分别修改listen_addresseswal_keep_segments/wal_keep_size的参数值。

    listen_addresses = '*'
    
    # PostgreSQL 10、11、12修改
    wal_keep_segments = 4096
    
    # PostgreSQL 13、14修改
    wal_keep_size = 65536
    说明

    参数可能默认被注释,修改后注意删除行首的#

  6. ECS,然后输入:wq保存修改并退出。

  7. 启动PostgreSQL数据库服务。

    说明

    该命令需要使用su - postgres命令,切换至postgres用户执行。

    /usr/pgsql-13/bin/pg_ctl start

后续步骤

创建迁移账号