記一次生產資料庫伺服器hang機故障排查,值得借鑑

2019-07-25     波波說運維

概述

最近準備對mysql做優化,修改配置文件後mysql無法正常啟動,猜測是個別參數問題,不過後來發現伺服器一直卡死,所以重啟了下伺服器,也就是這個重啟伺服器發現了一些很奇怪的現象。


現象

在伺服器重啟後發現以下問題:執行一些基本命令會hang死。

而且發現mysql進程無法kill掉


排查過程

1、查看磁碟、內存

可以發現磁碟、內存都正常

2、查看伺服器整體情況

在用top命令的時候發現IO存在瓶頸,已經達到98%了

3、查看是否有異常用戶操作

好吧,都是我的IP位址,那應該是mysql的問題導致了。

4、計劃用iotop進一步分析

本來想用iotop來分析具體是哪個進程影響的IO問題,但發現系統之前沒裝這工具..而目前IO滿了,用yum又裝不了這工具,只能選擇最後一個辦法了。

5、重啟大法

重啟前發現之前的配置文件是有點問題的,寫了兩個[mysqld],修改回正確的配置文件,禁止mysql開機自動啟動,然後重啟(注意只能手動重啟)。

6、重啟後

重啟後手動重啟mysql正常。

問題應該是在這:我之前配置文件不小心寫了兩個[mysqld],也就是配置文件錯誤了,但是伺服器重啟了(mysql進程是開機自動啟動的),然後mysql進程就處於這種僵死狀態,導致磁碟IO一直是滿的,改好配置文件後手動重啟就可以了。


後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注一下~

文章來源: https://twgreatdaily.com/zh-tw/AOB4QWwB8g2yegNDL-2T.html