先說下大體架構: Master下面挂着3個slave,讀寫分離,3個slave是一個讀叢集(版本均為Percona 5.1)
故障現象:其中一台機器(暫且稱之為C)slave延遲偶爾瞬間為22秒!
可能的情況是:
1、瞬間可能有大量的更新;
2、有些SQL語句耗費太多資源;
3、大事務在執行(大事務:一個事務裡面包含過多語句邏輯)
4、磁盤問題
5、系統其他問題
從zabbix監控中,innodb_rows_operate顯示中無異常現象,排除1;
從slave的slow_query_log 中,發現部分定時任務的SQL,但與slave并無直接關系(時間點對不上),追蹤2;
通過解析binlog,并未發現“大事務”的存在,排除3;
磁盤狀态穩定,排除4;
在無直接線索的情況下,隻有機器C有延遲狀态,對比其他兩台機器(暫且成為A,B),發現隻有Server C的時間不對(差将近一分鐘),貌似已經找到答案;(作業系統規範執行的不徹底啊,該反思),
slave_behiend_master 是由于主從機器時間不對導緻的,具體原因,可以參考下官方文檔!
本文轉自 位鵬飛 51CTO部落格,原文連結:http://blog.51cto.com/weipengfei/1359639,如需轉載請自行聯系原作者