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

发布于:2025-06-01 ⋅ 阅读:(25) ⋅ 点赞:(0)

目录

1 成功配置主从复制

2 加载插件

3 半同步复制监控

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)


网站公告

今日签到

点亮在社区的每一天
去签到