- 在master上安装配置半同步的插件
root@(none) 17:12 mysql>install plugin rpl_semi_sync_master soname 'semisync_master.so';
Query OK, 0 rows affected (0.01 sec)
临时开启半同步复制:
root@(none) 19:38 mysql>set global rpl_semi_sync_master_timeout = 1;
(超时时间设置为1,默认是10秒)
root@(none) 19:39 mysql>set global rpl_semi_sync_master_enabled = 1;
- 永久配置,修改配置文件
[root@mysql ~]# vim /etc/my.cnf
[mysqld]
#半同步复制
rpl_semi_sync_master_enabled=1 #添加
rpl_semi_sync_master_timeout=1000 # 1 second #添加
- 刷新mysql服务
[root@mysql ~]# service mysqld restart
Shutting down MySQL............ SUCCESS!
Starting MySQL. SUCCESS!
- 在从服务器上也配置安装半同步的插件
root@(none) 19:49 mysql>install plugin rpl_semi_sync_slave soname 'semisync_slave.so';
Query OK, 0 rows affected (0.01 sec)
- 修改从服务器的配置文件
[root@kafka02 ~]# vim /etc/my.cnf
[mysqld]
#半同步复制
rpl_semi_sync_slave_enabled = 1 #添加
- 刷新mysql服务
[root@kafka02 ~]# service mysqld restart
Shutting down MySQL.... SUCCESS!
Starting MySQL. SUCCESS!
7、在master上执行SQL语句查看是否激活半同步
root@(none) 20:10 mysql>select plugin_name,plugin_status
from information_schema.plugins
where plugin_name like '%semi%';
+----------------------+---------------+
| plugin_name | plugin_status |
+----------------------+---------------+
| rpl_semi_sync_master | ACTIVE |
+----------------------+---------------+
在从服务器也查看一下
root@(none) 20:13 mysql>select plugin_name,plugin_status
-> from information_schema.plugins
-> where plugin_name like '%semi%';
+---------------------+---------------+
| plugin_name | plugin_status |
+---------------------+---------------+
| rpl_semi_sync_slave | ACTIVE |
+---------------------+---------------+
8、测试半同步(在master上建库建表,在slave上查看有没有)
在slave上查看