MySQL主從延遲解決方法的歸納和總結
MySQL主從延遲情況共分為以下四類
一.MIXED模式無索引或SQL慢
在從庫上
pager grep -v Sleep;show processlist 檢視到正在執行的SQL
解決方法:
1.SQL比較簡單,則檢查否缺少索引,並新增索引。例如update操作where條件無索引。
2.SQL比較複雜,例如insert into select from語句,如果select裡包含group by,多表關聯,可能效率會比較低。這類可以到主庫把binlog_format改為row.
二.主庫上有大事務,導致從庫延時
解決方法:
找開發人員溝通,增加快取,非同步寫入資料庫,減少對DB的大量寫入。
三.主庫寫入頻繁,從庫壓力跟不上主庫導致延時
此類原因的主要現象是資料庫的IUD(增改刪)操作非常多,slave由於sql_thread單執行緒的原因追不上主庫的寫操作。
解決方法:
1.升級主庫的硬體配置,比如ssd、fio
2.設定日誌重新整理頻率:
set global_sync_binlog=0;
四.資料庫中存在大量myisam表,在備份的時候導致從庫延遲
由於xtrabackup工具備份到最後會執行flush tables with read lock,對資料庫進行鎖表以便進行一致性備份,然後對於myisam表鎖,會阻礙slave sql_thread執行緒停滯執行而導致hang。
該問題目前比較好的解決方法是修改表結構為innod儲存引擎的表。
一.MIXED模式無索引或SQL慢
在從庫上
pager grep -v Sleep;show processlist 檢視到正在執行的SQL
解決方法:
1.SQL比較簡單,則檢查否缺少索引,並新增索引。例如update操作where條件無索引。
2.SQL比較複雜,例如insert into select from語句,如果select裡包含group by,多表關聯,可能效率會比較低。這類可以到主庫把binlog_format改為row.
二.主庫上有大事務,導致從庫延時
解決方法:
找開發人員溝通,增加快取,非同步寫入資料庫,減少對DB的大量寫入。
三.主庫寫入頻繁,從庫壓力跟不上主庫導致延時
此類原因的主要現象是資料庫的IUD(增改刪)操作非常多,slave由於sql_thread單執行緒的原因追不上主庫的寫操作。
解決方法:
1.升級主庫的硬體配置,比如ssd、fio
2.設定日誌重新整理頻率:
set global_sync_binlog=0;
- innodb_flush_log_at_trx_commit=0每秒將log_buffer的內容重新整理到logfile,並且將日誌同步重新整理到磁碟。該模式下,在事務提交的時候,不會主動觸發寫入磁碟的操作。
- innodb_flush_log_at_trx_commit=1每次commit將log_buffer重新整理到logfile,並且將日誌同步重新整理到磁碟。
- innodb_flush_log_at_trx_commit=2每次commit將log_buffer重新整理到logfile,但是flush(刷到磁碟)操作並不會同時進行,每秒將日誌重新整理到磁碟。
四.資料庫中存在大量myisam表,在備份的時候導致從庫延遲
由於xtrabackup工具備份到最後會執行flush tables with read lock,對資料庫進行鎖表以便進行一致性備份,然後對於myisam表鎖,會阻礙slave sql_thread執行緒停滯執行而導致hang。
該問題目前比較好的解決方法是修改表結構為innod儲存引擎的表。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2128217/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL主從複製延遲解決方案MySql
- 影響MySQL主從延遲的幾個因素及解決方法MySql
- mysql主從延遲複製MySql
- MySQL主從資料庫同步延遲問題怎麼解決MySql資料庫
- 主從複製延遲推薦解決方案
- MYSQL常用的效能指標總結和歸納MySql指標
- 【MySQL】常見slave 延遲原因以及解決方法MySql
- mysql的主從複製資料延遲問題MySql
- 【MySQL】六、常見slave 延遲原因以及解決方法MySql
- 主從延遲調優思路
- MySQL主從複製延遲原因及處理思路MySql
- mysql主從同步(4)-Slave延遲狀態監控MySql主從同步
- 記一次 MySQL 主從複製延遲的踩坑MySql
- 如何避免MYSQL主從延遲帶來的讀寫問題?MySql
- mysql同步(複製)延遲的原因及解決方案MySql
- 面試官:我們們來聊一聊mysql主從延遲面試MySql
- Mysql配置從庫延遲應用MySql
- jQuery學習總結歸納jQuery
- Mysql 從庫如果有未提交的事務主庫ddl操作導致主從延遲MySql
- 如何解決 MySQL 主從延時問題?MySql
- vsftpd服務的歸納總結FTP
- Oracle的鎖機制歸納總結Oracle
- Mysql 非同步複製延遲的原因及解決方案MySql非同步
- MySQL主從不一致的幾種故障總結分析、解決和預防MySql
- MySQL Slave延遲很大優化方法MySql優化
- mysql主從不同步的2種解決方法MySql
- 第28節 從庫Seconds_Behind_Master延遲總結AST
- MHA工具的優缺點歸納總結
- mysql主從同步(5)-同步延遲狀態考量(seconds_behind_master和pt-heartbea)MySql主從同步AST
- SQL Azure與SQL Server的異同點總結和歸納SQLServer
- Solr與Elasticsearch的優缺點比較總結和歸納SolrElasticsearch
- mysql的主從複製延遲問題--看這一篇就夠了MySql
- Mysql 主從延時監控MySql
- mysql線上修改表結構大資料表的風險與解決辦法歸納MySql大資料
- MySQL之 從複製延遲問題排查MySql
- 從Mysql slave system lock延遲說開去MySql
- 這套方法論,徹底終結MySQL同步延遲問題MySql
- MongoDB從庫延遲讀取資料問題的解決思路MongoDB