BOOK.PANAFRIO.COM
Search : Login


應用專題

操作系统

数据库

移民資訊

程序设计

综合交流

网管技术

Search ALL -->
PostgreSQL 设置流复制 ( 2025-09-28 ) + ( 865 )
/
设置PostgreSQL流复制主要包括 
主库配置(设置复制用户、postgresql.conf和pg_hba.conf参数)、创建备库备份(使用pg_basebackup)以及配置备库(创建recovery.conf并设置primary_conninfo)等步骤。关键参数包括wal_level、max_wal_senders、wal_keep_size,以及根据需要配置hot_standby(用于读写分离)和同步复制的synchronous_commit与synchronous_standby_names。  
第一步:主库配置 
 
    创建复制用户:在主库上创建一个拥有复制权限的用户。 
    sql 
 
CREATE USER replicator WITH REPLICATION ENCRYPTED PASSWORD 'your_password'; 
 
修改 pg_hba.conf:允许创建的复制用户从备库IP连接。 
 
host replication replicator <slave_ip_address>/32 md5 
 
修改 postgresql.conf: 
 
    设置 wal_level = replica 或 logical。 
    设置 max_wal_senders 为一个正整数,例如 5。 
    设置 wal_keep_size,为WAL日志保留足够的空间,例如 128MB。 
    如果需要同步复制,还需设置 synchronous_commit (例如,设为 on) 和 synchronous_standby_names。 
 
重载配置:使参数生效。 
sql 
 
SELECT pg_reload_conf(); 
 
  
 
第二步:在备库上执行 pg_basebackup 
 
    生成主库备份:在备库上使用 pg_basebackup 命令从主库获取一个完整的数据库备份。 
    bash 
 
pg_basebackup -h <主库IP> -U replicator -D /path/to/standby_data -Fp -Xs -P -R 
 
    -h 指定主库主机名或IP地址。 
    -U 指定连接主库的用户。 
    -D 指定备库数据目录。 
    -Fp 指定以纯文本方式打包。 
    -Xs 指定使用流复制,包括复制WAL文件。 
    -P 显示进度。 
    -R 会在备库数据目录自动生成 recovery.conf (PostgreSQL 12之前版本) 或在 postgresql.auto.conf 文件中写入 primary_conninfo 参数 (PostgreSQL 12之后版本),并创建standby.signal 文件以启动备库。  
 
第三步:备库配置与启动 
 
    创建 standby.signal:如果 -R 参数未自动创建,请手动在备库数据目录创建此文件来启动备库作为流复制的从节点。 
    配置 recovery.conf (PostgreSQL 12及之前版本):如果使用旧版本,需要在备库数据目录创建 recovery.conf 文件,并配置 primary_conninfo。 
 
    primary_conninfo = 'host=<主库IP> port=5432 user=replicator password=your_password application_name=standby001' 
 
        application_name 参数的值应与主库 postgresql.conf 中 synchronous_standby_names 的值一致(如果进行同步复制)。 
    启动备库服务。 
    验证复制状态:在主库执行查询,检查备库是否正在进行WAL日志流传输。 
    sql 
 
SELECT * FROM pg_stat_replication; 
 
    sync_state 字段为 async 表示异步流复制,为 sync 表示同步流复制。 
    status 字段为 streaming 表示正常状态。 

|   Developed by GrupoPanafrio.Com   |  Telephone : (507) 6672-2268   |   E-MAIL :   |  WebMail  |
Copyright © 2009-2026 Book.Panafrio.Com All Rights Reserved.