作者:瀚高PG实验室(Highgo PG Lab)-Chrisx @[toc] ## 介绍 数据库流复制支持同步和异步方式,同步方式能提供最大保护,异步方式能提供最大可用。同步方式在网络异常或备库宕机情况下,主库操作也会受影响,事务操作会出现等待状态。当出现以上场景时,我们总是希望进行降级,将同步转为异步,避免主库hang住。 - 如果实在无法保持所要求数量的同步后备,那么应该减少synchronous_standby_names中指定的事务提交应该等待其回应的同步后备的数量(或者禁用),并且在主服务器上重载配置文件。 - 即便当同步复制被启用时,个体事务也可以被配置为不等待复制,做法是将synchronous_commit参数设置为local或off。 基于以上描述,可以实现流复制同步异步转换操作。必要时,可直接将同步复制降级为异步复制。 ## 同步异步转换 修改synchronous_standby_names,然后reload生效。也就是说转换过程不需要重启服务器,这一点非常方便的。 - 同步流复制,synchronous_standby_names指定需要启用同步复制策略的备用服务器 - 异步流复制,synchronous_standby_names为空 示例 ```sql alter system set synchronous_standby_names='standby12'; select pg_reload_conf(); 此时关闭备库,主库执行insert,主库hang住 alter system set synchronous_standby_names=''; select pg_reload_conf(); 此时insert就执行成功了 ``` ## 同步复制不等待 修改synchronous_commit参数设置为local或off,reload生效。即使为同步复制,主库事务也无需等待。此种情况也可以看做是另一种“同步转异步” 示例 ```sql alter system set synchronous_standby_names='standby12'; alter system set synchronous_commit=local; select pg_reload_conf(); 此时关闭备库,主库执行insert,主库不受影响。但是注意 DETAIL: The transaction has already committed locally, but might not have been replicated to the standby. ```
流复制同步异步转换
来源:这里教程网
时间:2026-03-02 12:09:24
作者:
编辑推荐:
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 计算机病毒传播主要通过什么途径?计算机病毒通过什么传播
计算机病毒传播主要通过什么途径?计算机病毒通过什么传播
26-03-02 - 台式电脑剪切时死机文件丢失了的找回办法
台式电脑剪切时死机文件丢失了的找回办法
26-03-02 - SQL Prompt教程:旧式联接语法(ST001)
SQL Prompt教程:旧式联接语法(ST001)
26-03-02 - 电脑CPU的主频是什么_电脑主频是不是越高越好
电脑CPU的主频是什么_电脑主频是不是越高越好
26-03-02 - SQLServer 2012复制订阅在不重新初始化快照情况下新加表
SQLServer 2012复制订阅在不重新初始化快照情况下新加表
26-03-02 - SQLServer 2012复制订阅数据订阅过程
SQLServer 2012复制订阅数据订阅过程
26-03-02 - 电脑硬盘快速覆盖防止数据恢复方法图解教程
电脑硬盘快速覆盖防止数据恢复方法图解教程
26-03-02 - 传奇黑名单有什么用_传奇黑名单怎么加
传奇黑名单有什么用_传奇黑名单怎么加
26-03-02 - 原神电脑版快捷键大全及改键位方法
原神电脑版快捷键大全及改键位方法
26-03-02 - SQLServer数据库中了勒索病毒加密,扩展名改为ReadInstructions
