MySQL半同步复制模式

php中文网
发布: 2016-06-07 17:21:56
原创
1005人浏览过

Mysql复制默认是异步完成的,半同步方式是google为mysql开发的一个补丁,在mysql5.5或者更高的版本中已经集成了这个功能。半同步

mysql复制默认是异步完成的,半同步方式是google为mysql开发的一个补丁,,在mysql5.5或者更高的版本中已经集成了这个功能。半同步的意思表示master 只需要接收到其中一台slave的返回信息,就会commit;否则需等待直至达到超时时间然后切换成异步再提交。这个做可以使主从库的数据的延迟较小,可以在损失很小的性能的前提下提高数据的安全性。

 半同步的开启比较简单,是需要在master和slave都安装半同步插件,并启用就可以了。

查询mysql复制有没有使用半同步,

mysql> show variables like 'rpl%';

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

| Variable_name    | Value |

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

| rpl_recovery_rank | 0    |

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

1 row in set (0.00 sec)

或者使用show status like  'rpl%';

启用半同步模式:

在master执行

mysql> install plugin rpl_semi_sync_master soname 'semisync_master.so';

Query OK, 0 rows affected (0.03 sec)

mysql> set global rpl_semi_sync_master_enabled=0;

Query OK, 0 rows affected (0.00 sec)

 

mysql> show variables like 'rpl%';

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

| Variable_name                      | Value |

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

| rpl_recovery_rank                  | 0    |

| rpl_semi_sync_master_enabled      | OFF  |

| rpl_semi_sync_master_timeout      | 10000 |

模力视频
模力视频

模力视频 - AIGC视频制作平台 | AI剪辑 | 云剪辑 | 海量模板

模力视频 51
查看详情 模力视频

| rpl_semi_sync_master_trace_level  | 32    |

| rpl_semi_sync_master_wait_no_slave | ON    |

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

5 rows in set (0.00 sec)

 

mysql> set global rpl_semi_sync_master_enabled=1;

Query OK, 0 rows affected (0.00 sec)

 

mysql> show variables like 'rpl%';

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

| Variable_name                      | Value |

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

| rpl_recovery_rank                  | 0    |

| rpl_semi_sync_master_enabled      | ON    |

| rpl_semi_sync_master_timeout      | 10000 |

| rpl_semi_sync_master_trace_level  | 32    |

| rpl_semi_sync_master_wait_no_slave | ON    |

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

rpl_semi_sync_master_enabled 的值是0(on)或者1(off),默认是1.

rpl_semi_sync_master_timeout的值默认是10000(10s)

5 rows in set (0.00 sec)

在slave执行如下操作:

mysql> install plugin rpl_semi_sync_slave soname 'semisync_slave.so';

Query OK, 0 rows affected (0.03 sec)

 

mysql> set global rpl_semi_sync_slave_enabled=1;

Query OK, 0 rows affected (0.00 sec)

 

mysql> show variables like 'rpl%';

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

| Variable_name                  | Value |

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

| rpl_recovery_rank              | 0    |

| rpl_semi_sync_slave_enabled    | ON    |

| rpl_semi_sync_slave_trace_level | 32    |

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

3 rows in set (0.00 sec)

 

mysql> show status like 'rpl%';

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

| Variable_name              | Value      |

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

| Rpl_semi_sync_slave_status | ON          |

| Rpl_status                | AUTH_MASTER |

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

2 rows in set (0.01 sec)

mysql> stop slave io_thread;

Query OK, 0 rows affected (0.00 sec)

 

mysql> start slave io_thread;

Query OK, 0 rows affected (0.00 sec)

 

rpl_semi_sync_slave_enabled的值是0(on)或者1(off),默认是1.

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号