暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

浅测 sync_config_strategy 参数

原创 qi_yu 2024-04-02
379

1. 参数说明

主机和备机、备机和级联备之间配置文件的同步策略。

该参数属于POSTMASTER类型参数,请参考表GUC参数分类中对应设置方法进行设置。

取值范围: 枚举类型

  • all_node: 主机配置为all_node时,表示允许主机向所有备机主动同步配置文件;备机配置为all_node时,表示允许当前备机向其主机发送同步请求,允许当前备机向其所有级联备主动同步配置文件;级联备配置为all_node时,表示允许当前级联备向其备机发送同步请求。
  • only_sync_node: 主机配置为only_sync_node时,表示仅允许主机向所有同步备机主动同步配置文件;备机配置为only_sync_node时,表示允许当前备机向其主机发送同步请求,不允许当前备机向其所有级联备主动同步配置文件;级联备配置为only_sync_node时,表示允许当前级联备向其备机发送同步请求。
  • none_node: 主机配置为none_node时,表示不允许主机向任何备机主动同步配置文件;备机配置为none_node时,表示不允许当前备机向其主机发送同步请求,不允许当前备机向其所有级联备主动同步配置文件;级联备配置为none_node时,表示不允许当前级联备向其备机发送同步请求。

默认值: all_node

2. 测试环境

一主三备

初始配置:

openGauss=# show synchronous_standby_names  ;
 synchronous_standby_names 
---------------------------
 FIRST 1(dn_6002,dn_6003)
(1 row)

openGauss=# show sync_config_strategy ;
 sync_config_strategy 
----------------------
 all_node
(1 row)

openGauss=# show shared_buffers ;
 shared_buffers 
----------------
 2GB
(1 row)

3. 测试过程

3.1 sync_config_strategy=all_node

主库执行修改参数shared_buffers

gs_guc reload -N all -I all  -c "shared_buffers=3GB " 

重启集群后,查看参数

 shared_buffers 
----------------
 3GB
(1 row)

所有节点参数均修改

3.2 sync_config_strategy =only_sync_node

主库修改参数

NOTICE:  please restart the database for the POSTMASTER level parameter to take effect.
ALTER SYSTEM SET

重启主库后,主库配置为

openGauss=# show sync_config_strategy ;
 sync_config_strategy 
----------------------
 only_sync_node
(1 row)

备库配置均为

openGauss=# show sync_config_strategy ;
 sync_config_strategy 
----------------------
 all_node
(1 row)

3.2.1 主库使用-N all 修改参数

gs_guc reload -N all -I all  -c "shared_buffers=3GB " 

主备库参数均为

openGauss=# show shared_buffers ;
 shared_buffers 
----------------
 3GB
(1 row)

3.2.2 主库不使用-N all 修改参数

主库修改参数shared_buffers

openGauss=# alter system set  shared_buffers = '2GB';

gs_guc reload -I all  -c "shared_buffers=2GB "

dn_6001,dn_6002,dn_6003

openGauss=# show shared_buffers ;
 shared_buffers 
----------------
 2GB
(1 row)

dn_6004未修改成功

openGauss=# show shared_buffers ;
 shared_buffers 
----------------
 3GB
(1 row)

若full build dn_6004,则dn_6004参数和主库相同

4. 结论

若主节点配置为sync_config_strategy =only_sync_node,

  1. 使用gs_guc reload -N all -I all -c 修改参数,会修改所有节点
  2. 使用alter system set 或者gs_guc reload -I all -c方式修改,
    则sync_config_strategy生效,不写在synchronous_standby_names里的节点不会修改
最后修改时间:2024-04-02 15:45:34
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论