《MYSQL教程故障的機器修好后重啟,狂拉主庫binlog,導致網絡問題的解決方法》要點:
本文介紹了MYSQL教程故障的機器修好后重啟,狂拉主庫binlog,導致網絡問題的解決方法,希望對您有用。如果有疑問,可以聯系我們。
MYSQL教程問題簡述:
一周前,有一臺mysql服務器發生硬件故障,停機了.我們給專門負責這塊的同學提交了申請,他們負責去報修這臺服務器.今天這臺服務器修好后,他們將其開機啟動.服務器上的4個mysql實例在開機后自動啟動,開始拉主庫的binlog.由于這臺服務器停機時間比較久,日志丟的比較多,狂拉主庫的binlog,導致主庫網絡出現問題.
現象:
首先,我們完全沒有意識到是因為一臺壞掉的服務器重啟拉主庫binlog導致的,因為我們壓根不知道 這臺服務器什么情況,只知道1周前,我們報修了1臺服務器.具體什么情況,有沒有修好,有沒有開機,我們完全不知道.
在這樣的情況下,忽然聽到網絡的同學說mysql有一臺機器網絡流量過大,導致業務感覺很慢,總共持續了17分鐘.其實這樣,是沒有多大頭緒的.
排查:
查看processlist、全日志、慢日志都沒有發現有什么問題.
查看監控,發現那段時間的服務器的讀IO驟然升高.
通過查看processlist的歷史記錄,發現有一段時間,主從復制的用戶 狀態是 waiting for net,通過其IP發現該服務器是1周前壞掉的一個slave服務器.
結論:
這臺服務器上有4個實例,服務器啟動后,mysql實例自動啟動,開始向主庫上拉binlog,每個主庫每天的binlog量大概6G,4個實例1個星期大概160多G的binlog.
問題:
1、壞掉的服務器什么時候修好,什么時候開機,我們不可控,也不知道,也沒有關注
2、這種案例其實是很簡單、很典型的可能造成影響或故障的case,我們提前沒有對這個現象有警覺,雖然知道這是個很容易出現的問題,但是在我們的case中,完全沒有這方面的意識.因此導致該事件發生
3、對于網絡流量這塊,缺乏有效監控
解決方法:
1、所有服務器,取消開機自動啟動mysql,服務器開機后,人為啟動實例,停slave.(這樣,如果服務器很多,可能過于麻煩,暫且先這樣記錄下來,總比造成影響強)
2、意識到該問題,將該問題納入避免問題的常識庫或工作手冊中去.
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/1588.html