MySQL優化(四) 慢查詢的定位及優化
阿新 • • 發佈:2018-11-28
啟動 strong ptime pan bsp 回話 query plain ont
一、SQL語句優化的一般步驟:
(1)通過 show status 命令了解各種 SQL 的執行效率;
(2)定位執行效率較低的 SQL 語句(重點是 Select);
(3)通過 explain 分析低效率的 SQL 語句的執行情況;
(4)確實問題並采取相應的優化措施;
二、
1、show status 命令
格式: show [session | global] status like ...
如果不寫[session | global],默認的是session,即取出當前回話的執行情況;
如果想查詢所有的(即MySql啟動到現在的信息), 則增加 global 參數;
show status like "uptime" //查詢MySql啟動的時間; show status like "com_select" //查詢MySql的查詢次數 show status like "com_insert" //查詢MySql的插入次數 show status like "com_update" //查詢MySql的更新次數 show status like "com_delete" //查詢MySql的刪除次數
show global status like "uptime" //查詢MySql啟動的時間; show global status like "com_select" //查詢MySql的查詢次數 show global status like "com_insert" //查詢MySql的插入次數 show global status like "com_update" //查詢MySql的更新次數 show global status like "com_delete" //查詢MySql的刪除次數
show global status like "connections" //查詢MySQL的連接數
show global status like "slow_queries" //獲取慢查詢的次數
2、如何定位慢查詢?
默認情況下,MySql認為超過 10 秒才是一個慢查詢;
顯示當前慢查詢設置的時間:show variables like "long_query_time" ;
修改慢查詢的設置時間為1秒:set long_query_time=1
MySQL優化(四) 慢查詢的定位及優化