一.為什么別人問你MySQL優化的知識 總是沒有底氣
1.因為你只是回答一些大而化之的調優原則,
a.比如:”建立合理索引”(什么樣的索引合理?)
b.“分表分庫”(用什么策略分表分庫?)
c.“主從分離”(用什么中間件?)
2.沒有從細化到定量的層面去分析.
a.如qps提高了%N?
b.有沒有減少文件排序?
c.語句的掃描行數減少了多少?
二.怎么做?
當mysql效率不高時,我們首先要做的,不是優化,而是—診斷分析,找出瓶頸所在. CPU,內存,IO? 峰值,單條語句
1.分析常用命令
a).show processlist 開啟慢查詢獲取有問題SQL
b).explain 分析語句
2.語句等待時間長:
c).調優服務器參數(如緩沖區,線程數等)
3.語句執行時間長:
d).表關聯多(表設計有缺陷)
e).索引沒優化
f).語句沒優化(where 條件 計算類語句等)
.
等等
這里只是簡單的做一個描述。
那么,本系列博客,會展開分析一下mysql相關的只是,從優化到索引的創建,好好鞏固學習一下做一個總結,把自己的心得分享出來和大家交流。
希望以后再也不出現這種尷尬局面,覺得自己懂,但其實還是不會。
本節通過圖片的形式,總體梳理一下需要掌握的脈路,也是自己學習的路線,整體如下:
圖1.MySQL服務器調優思路
圖2. sql優化
圖3. 索引學習
?以上就是mysql優化與索引總分析【圖解】的內容,更多相關內容請關注php中文網(www.php.cn)!
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END