轧岔 发表于 2025-6-10 15:25:12

PostgreSQL流复制主从切换

  0,前提确保PostgreSQL主从流复制是正常状态  1,从节点执行promote提升为主节点:    1.1 ###修改原从节点的pg_hba.conf,设置复制用户的IP为主节点   host     replication     replica_user     原始主节点IP/32         md5
   1.2 ###原从节点上创建slot   SELECT * FROM pg_create_physical_replication_slot('pgstandby_slave01');    
    1.3 ###执行promote提升为可读写    pg_ctl promote -D /usr/local/pgsql16/pg9000/data        1.4 ###检查节点状态    SELECT pg_is_in_recovery();           从节点升主切换示例 
 2,原主节点以从节点身份加入复制     ###2.1,创建一个stand.single文件,用来标识当前节点以standby模式启动     touch standby.signal
     ###2.2,在postgresql.auto.conf文件,写入当前“主”节点信息,确保当前“主节点”上复制槽已经创建,流复制默认不会同步原始主节点上的“复制槽”到当前节点    # Do not edit this file manually!    # It will be overwritten by the ALTER SYSTEM command.    primary_conninfo = 'user=replica_user password=''******'' channel_binding=prefer host=原始从节点IP port=9000 sslmode=prefer sslcompression=0 sslcertmode=allow sslsni=1 ssl_min_protocol_version=TLSv1.2 gssencmode=disable krbsrvname=postgres gssdelegation=0 target_session_attrs=any load_balance_hosts=disable'    primary_slot_name = 'pgstandby_slave01'     ###2.3,修复当前节点的时间线    pg_rewind --target-pgdata=/usr/local/pgsql16/pg9000/data --source-server='host=***.***.***.*** port=9000 user=postgres dbname=postgres password=postgres'       ### 2.4 重新授权文件权限     chown -R postgres:postgres /usr/local/pgsql16/pg9000/data    chmod 700 -R  /usr/local/pgsql16/pg9000/data     ###2.5重启当前节点    systemctl restart postgresql9000    
    ###2.6检查复制状态
    select pg_is_in_recovery(),status from pg_stat_wal_receive;     主节点以从节点重新加入复制示例 
 3,总结:  1,注意前置条件:包括新的主节点复制槽创建,pg_hba.conf配置文件修改
  2,新的从节点需要做pg_rewind修复,同时需要重新授权
  3,保持思路清晰,操作步骤规范化
 
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

呈步 发表于 2025-11-12 20:24:04

这个好,看起来很实用

喳谍 发表于 2025-12-3 04:59:52

这个好,看起来很实用

倘伟 发表于 2025-12-29 15:03:13

感谢发布原创作品,程序园因你更精彩

村亢 发表于 2026-1-8 12:45:03

懂技术并乐意极积无私分享的人越来越少。珍惜

莠畅缕 发表于 2026-1-16 07:21:08

谢谢楼主提供!

茹静曼 发表于 2026-1-21 11:13:46

谢谢分享,试用一下

孜尊 发表于 2026-1-21 12:26:02

分享、互助 让互联网精神温暖你我

慷规扣 发表于 2026-1-21 23:55:09

谢谢分享,试用一下

劳暄美 发表于 2026-1-26 10:01:26

用心讨论,共获提升!

申屠梓彤 发表于 2026-1-27 08:51:51

感谢,下载保存了

袁勤 发表于 2026-1-30 07:56:12

懂技术并乐意极积无私分享的人越来越少。珍惜

申倩语 发表于 2026-2-1 07:23:34

感谢分享,下载保存了,貌似很强大

唐茗 发表于 2026-2-7 11:45:52

这个好,看起来很实用

赘暨逢 发表于 2026-2-8 02:41:42

热心回复!

肿抢 发表于 2026-2-8 03:12:22

新版吗?好像是停更了吧。

孜尊 发表于 2026-2-8 12:18:47

感谢分享

煅圆吧 发表于 2026-2-9 07:09:57

感谢分享,下载保存了,貌似很强大

篙菠 发表于 2026-2-9 11:09:07

前排留名,哈哈哈

撙仿 发表于 2026-2-9 17:20:54

收藏一下   不知道什么时候能用到
页: [1] 2
查看完整版本: PostgreSQL流复制主从切换