这篇文章主要讲解了“怎么用mysql减少主从延迟”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用mysql减少主从延迟”吧!
1、优化SQL。
避免慢SQL,减少批量操作,建议以update-sleep的形式写脚本;
2、降低多线程大事务并发的概率。
优化业务逻辑;
3、增加服务器。
目的是分散阅读压力,从而减少服务器负载;
4、提高从库机的配置。
减少主库写binlog和从库读binlog的效率差;
5、尽量使用短链路。
即主库与从库服务器的距离尽量短,提高端口带宽,减少binlog传输的网络延迟;
6、实时要求的业务读强制走主库,从库只做灾备备份。
实例
mysql> stop slave; Query OK, 0 rows affected (0.03 sec) mysql> change master to master_delay=600; Query OK, 0 rows affected (0.01 sec) mysql> start slave; Query OK, 0 rows affected (0.01 sec) mysql> show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 172.17.61.131 Master_User: repl Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql_bin.000037 Read_Master_Log_Pos: 154 Relay_Log_File: slave_relay_bin.000002 Relay_Log_Pos: 320 Relay_Master_Log_File: mysql_bin.000037 Slave_IO_Running: Yes Slave_SQL_Running: Yes 。。。 Exec_Master_Log_Pos: 154 Relay_Log_Space: 527 。。。 Master_Server_Id: 10000 Master_UUID: 8d8746fb-2cc6-11e8-b1b6-000c295c63e0 Master_Info_File: /u01/mysql/master.info SQL_Delay: 600 SQL_Remaining_Delay: NULL Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates Master_Retry_Count: 86400 。。。 1 row in set (0.00 sec)
感谢各位的阅读,以上就是“怎么用mysql减少主从延迟”的内容了,经过本文的学习后,相信大家对怎么用mysql减少主从延迟这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。