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)

相关推荐
heartbeat..3 小时前
Spring AOP 全面详解(通俗易懂 + 核心知识点 + 完整案例)
java·数据库·spring·aop
麦聪聊数据6 小时前
MySQL并发与锁:从“防止超卖”到排查“死锁”
数据库·sql·mysql
AC赳赳老秦6 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
myzshare7 小时前
实战分享:我是如何用SSM框架开发出一个完整项目的
java·mysql·spring cloud·微信小程序
YMatrix 官方技术社区7 小时前
YMatrix 存储引擎解密:MARS3 存储引擎如何超越传统行存、列存实现“时序+分析“场景性能大幅提升?
开发语言·数据库·时序数据库·数据库架构·智慧工厂·存储引擎·ymatrix
辞砚技术录8 小时前
MySQL面试题——索引2nd
数据库·mysql·面试
linweidong8 小时前
C++thread pool(线程池)设计应关注哪些扩展性问题?
java·数据库·c++
墨笔之风9 小时前
java后端根据双数据源进行不同的接口查询
java·开发语言·mysql·postgres
欧亚学术9 小时前
突发!刚刚新增17本期刊被剔除!
数据库·论文·sci·期刊·博士·scopus·发表
黑白极客9 小时前
怎么给字符串字段加索引?日志系统 一条更新语句是怎么执行的
java·数据库·sql·mysql·引擎