您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么用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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。