目录
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)