MySQL半同步复制配置和参数详解

目录

[1 成功配置主从复制](#1 成功配置主从复制)

[2 加载插件](#2 加载插件)

[3 半同步复制监控](#3 半同步复制监控)

[4 半同步复制参数](#4 半同步复制参数)


1 成功配置主从复制

操作步骤参考:https://blog.csdn.net/zyb378747350/article/details/148309545

2 加载插件

#主库上

MySQL 8.0.26 之前版本:

mysql>INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';

MySQL 8.0.26 之后版本:

mysql>INSTALL PLUGIN rpl_semi_sync_source SONAME 'semisync_source.so';

mysql> SHOW STATUS LIKE 'Rpl_semi_sync_source_status';

+-----------------------------+-------+

| Variable_name | Value |

+-----------------------------+-------+

| Rpl_semi_sync_source_status | ON |

+-----------------------------+-------+

1 row in set (0.00 sec)

MySQL 8.0.26 之前版本:

mysql>SET GLOBAL rpl_semi_sync_master_enabled = 1;

MySQL 8.0.26 之后版本:

mysql>SET GLOBAL rpl_semi_sync_source_enabled = 1;

vi /etc/my.cnf

mysqld

rpl_semi_sync_master_enabled=1

MySQL 8.0.26 之后版本:

rpl_semi_sync_source_enabled=1

#从库上

MySQL 8.0.26 之前版本:

mysql>INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';

MySQL 8.0.26 之后版本:

mysql>INSTALL PLUGIN rpl_semi_sync_replica SONAME 'semisync_replica.so';

mysql> show variables like 'rpl_semi_sync%';

+-----------------------------------+-------+

| Variable_name | Value |

+-----------------------------------+-------+

| rpl_semi_sync_replica_enabled | ON |

| rpl_semi_sync_replica_trace_level | 32 |

+-----------------------------------+-------+

MySQL 8.0.26 之前版本:

mysql>SET GLOBAL rpl_semi_sync_slave_enabled = 1;

MySQL 8.0.26 之后版本:

mysql>SET GLOBAL rpl_semi_sync_replica_enabled = 1;

MySQL 8.0.26 之前版本:

mysql>STOP SLAVE IO_THREAD;

mysql>START SLAVE IO_THREAD;

MySQL 8.0.26 之后版本:

mysql>STOP REPLICA IO_THREAD;

mysql>START REPLICA IO_THREAD;

vi /etc/my.cnf

mysqld

rpl_semi_sync_slave_enabled=1

MySQL 8.0.26 之后版本:

rpl_semi_sync_replica_enabled=1

3 半同步复制监控

mysql> SHOW STATUS LIKE 'Rpl_semi_sync%';

4 半同步复制参数

#主库上

mysql> show global variables like '%semi%';

+---------------------------------------------+------------+

| Variable_name | Value |

+---------------------------------------------+------------+

| rpl_semi_sync_source_enabled | ON |

| rpl_semi_sync_source_timeout | 10000 |

| rpl_semi_sync_source_trace_level | 32 |

| rpl_semi_sync_source_wait_for_replica_count | 1 |

| rpl_semi_sync_source_wait_no_replica | ON |

| rpl_semi_sync_source_wait_point | AFTER_SYNC |

+---------------------------------------------+------------+

6 rows in set (0.00 sec)

#从库上

mysql> show global variables like '%semi%';

+-----------------------------------+-------+

| Variable_name | Value |

+-----------------------------------+-------+

| rpl_semi_sync_replica_enabled | ON |

| rpl_semi_sync_replica_trace_level | 32 |

+-----------------------------------+-------+

2 rows in set (0.00 sec)

相关推荐
阿演16 分钟前
DataDjinn 新版本更新:国产数据库支持、连接树体验、AI 查询和表格编辑继续增强
数据库·人工智能·ai·ai编程
一只fish38 分钟前
Oracle官方文档翻译《Database Concepts 26ai》附录-术语表
数据库·oracle
一只fish1 小时前
Oracle官方文档翻译《Database Concepts 26ai》第23章-数据库开发者概念
数据库·oracle
todoitbo1 小时前
从 MySQL 到 KingbaseES:Database、Schema、User 一次讲透
数据库·mysql·国产数据库·kingbasees
勇往直前plus2 小时前
Redis&Python 梳理
数据库·redis·python
千云2 小时前
100w大表0停机回滚:我们为什么放弃Undo Log,选择表名切换?
数据库·后端·mysql
SXJR2 小时前
使用docker 部署向量数据库Milvus
数据库·docker·容器·milvus·向量数据库
这个DBA有点耶2 小时前
时序数据库深度对比:2026 年主流 TSDB 架构演进与选型指南
数据库·sql·云原生·架构·运维开发·时序数据库
AC赳赳老秦2 小时前
用 OpenClaw 制定技术学习计划:根据目标岗位自动生成学习路线、推荐学习资源
开发语言·c++·人工智能·python·mysql·php·openclaw
计算机安禾2 小时前
【数据库系统原理】第9篇:SQL的结构化思维:DDL、DML与DCL的职责分离
数据库·sql·oracle