代码改变世界

【PostgreSQL】PostgreSQL将异步复制转换成同步复制

  abce  阅读(469)  评论(0编辑  收藏  举报

1.主库修改配置

postgresql.conf指定同步的节点

这里的standby server名称是从库的recovery.conf文件中指定的application_name

1
2
synchronous_standby_names ='pgsql_0_node_0'
synchronous_commit = on #默认值就是on

  

2.从库修改配置

Recovery.conf

1
2
3
4
5
6
7
standby_mode = 'on'
  
primary_conninfo = 'application_name=pgsql_0_node_0 host=IP_PRIMARY_NODE port=5432 user=replication_user password=PASSWORD'
  
recovery_target_timeline = 'latest'
  
trigger_file = '/tmp/failover_5432.trigger'

  

3.重启主库和从库

1
$ service postgresql-11 restart

  

4.查看状态

1
SELECT pid,usename,application_name,state,sync_state FROM pg_stat_replication;

至此,就从异步模式切换到同步模式了。

 

5.切换回到异步模式

如果想切换回到异步模式。只需要修改主库的配置

Postgresql.conf

1
2
3
#synchronous_standby_names = 'pgsql_0_node_0'
  
#synchronous_commit = on

  

重启主库:

1
2
$ service postgresql-11 restart
postgres=# SELECT pid,usename,application_name,state,sync_state FROM pg_stat_replication;

  

 
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2015-06-30 RMAN性能监控
2015-06-30 RMAN - 发现I/O瓶颈
2015-06-30 TNS-01251: Cannot set trace/log directory under ADR
2015-06-30 Oracle 监听器日志文件过大导致监听异常
点击右上角即可分享
微信分享提示