当前位置:   article > 正文

PostgreSQL流复制中的同步与异步_postgresql 流复制异步转同步的操作

postgresql 流复制异步转同步的操作

关于PostgreSQL的流复制,相关概念在文档里已经说的很清楚,这里总结一下我的理解,包括一些不太容易注意到的地方:

要配置同步复制,关键在主库配置两个参数:synchronous_commit 和synchronous_standby_names

synchronous_commit = on
synchronous_standby_names = 'FIRST 1 (pg1, pg2)'

synchronous_standby_names = 'ANY 1 (pg1, pg2)'

对于同步复制时,备库宕机导致主库不可用,反而降低可用性的问题,可以配置两个备库,一个与主库同步复制(sync),一个异步复制(async),如果同步复制的备库宕机,异步复制的备库立刻接替同步复制,这样就可避免同步复制反而降低可用性了。上面FIRST、ANY两种配置都可以实现这种策略。

对于我们的数据库系统,要求自动安装,自动切换,可以配置为不指定application_name:

synchronous_standby_names = 'ANY 1 (*)'

这种配置经过测试时可以的。

文档上有关于quorum的说明,但是这里说的更详细些:

Postgres 10 highlight - Quorum set of synchronous standbys (paquier.xyz)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/780371
推荐阅读
相关标签
  

闽ICP备14008679号