廣豐視角
關(guān)注互聯(lián)網(wǎng),關(guān)注技術(shù)開發(fā),透析與分享移動互聯(lián)網(wǎng)行業(yè)最新動態(tài)MYSQL使服務(wù)器內(nèi)存CPU占用過高問題的分析及解決方法
時間:2019-02-17 13:37:50 閱讀:47921次 分類:APP開發(fā)
最近的項目剛開始上線,以前沒覺得什么,現(xiàn)在客戶都反應(yīng)系統(tǒng)反應(yīng)太慢,需要解決,于是我在服務(wù)器查看了一下CPU占用情況,果然,mysql數(shù)據(jù)庫就占了百分之九十六七,所以想到了必須要使CPU占用率降下來。
(1)show processlist; 結(jié)果如下
mysql> show processlist;
+--------+-----------------+--------------------+------+---------+---------+-----------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+--------+-----------------+--------------------+------+---------+---------+-----------------------------+------------------+
| 4522 | event_scheduler | localhost | NULL | Daemon | 2315739 | Waiting for next activation | NULL |
| 258137 | CMAbutler | 10.14.85.121:55035 | CMA | Sleep | 5337 | | NULL |
| 258138 | CMAbutler | 10.14.85.121:55036 | NULL | Sleep | 5360 | | NULL |
| 260446 | root | localhost | NULL | Query | 0 | NULL | show processlist |
| 264040 | root | localhost | CMA | Sleep | 0 | | NULL |
+--------+-----------------+--------------------+------+---------+---------+-----------------------------+------------------+
5 rows in set (0.00 sec)
先簡單分析一下各列的含義和用途,第一列,id,一個標(biāo)識,你要kill一個語句的時候很有用。user列,顯示單前用戶,如果不是root,這個命令就只顯示你權(quán)限范圍內(nèi)的sql語句。host列,顯示這個語句是從哪個ip的哪個端口上發(fā)出的。呵呵,可以用來追蹤出問題語句的用戶。db列,顯示這個進(jìn)程目前連接的是哪個數(shù)據(jù)庫 。command列,顯示當(dāng)前連接的執(zhí)行的命令,一般就是休眠(sleep),查詢(query),連接(connect)。time列,此這個狀態(tài)持續(xù)的時間,單位是秒。state列,顯示使用當(dāng)前連接的sql語句的狀態(tài),很重要的列,后續(xù)會有所有的狀態(tài)的描述,請注意,state只是語句執(zhí)行中的某一個狀態(tài),一個sql語句,已查詢?yōu)槔?,可能需要?jīng)過copying to tmp table,Sorting result,Sending data等狀態(tài)才可以完成,info列,顯示這個sql語句,因為長度有限,所以長的sql語句就顯示不全,但是一個判斷問題語句的重要依據(jù)。
常見問題 :
一般是睡眠連接過多,嚴(yán)重消耗mysql服務(wù)器資源(主要是cpu, 內(nèi)存),并可能導(dǎo)致mysql崩潰。
(2)首先查看等待時間
mysql> show global variables like 'wait_timeout';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout | 28800 |
+---------------+-------+
1 row in set (0.00 sec)
(3)重設(shè)值
mysql> set global wait_timeout=200;
蕪湖廣豐軟件有限公司(原中江網(wǎng)絡(luò)),成立于2005年,經(jīng)過10多年定制開發(fā)經(jīng)驗,積累了大量技術(shù)儲備和定制開發(fā)經(jīng)驗,是一家集軟件研發(fā)、互聯(lián)網(wǎng)應(yīng)用為一體的綜合信息技術(shù)服務(wù)提供商。公司擁有核心的策劃團(tuán)隊和專業(yè)的技術(shù)研發(fā)團(tuán)隊,致力于采用領(lǐng)先的信息技術(shù),長期為涉及智慧園區(qū)/廠區(qū)/校園領(lǐng)域的各個企業(yè)提供快速、高效、安全的信息技術(shù)支持。公司立足智慧園區(qū)和智慧教育行業(yè),通過軟硬件的研發(fā)和互聯(lián)網(wǎng)應(yīng)用,疏通各企業(yè)間“端到端”的信息傳輸,靈活滿足智慧園區(qū)和智慧教育企業(yè)間不同用戶的需求,為其提供完善的信息化解決方案。
園區(qū)管理系統(tǒng),提供智慧園區(qū)綜合管理系統(tǒng),智慧園區(qū)設(shè)計方案咨詢,智慧園區(qū)管理系統(tǒng)、...