Mysql show profile 详解
1、show profile 是什么?
Show profile 是mysql 提供可以用來分析當前會話中語句執行的資源消耗情況??梢杂糜趕ql 調優的測量。
? ? ? ? ?默認情況下,參數處于關閉狀態,并保存最近15次的運行結果。
2、分析步驟:
2.1 是否支持:查看當前的mysql版本是否支持;
? ? ? ? ? ? 命令:show variables like ‘profiling%’;
? ? ? ? ? ? ? ? ? ? ?默認關閉,使用前需要開啟;
2.2 默認關閉,使用前需要開啟:
命令:set profiling=on;
?
2.3 運行sql;
2.4 查看結果:
Show profiles;
?
2.5 診斷sql ,show profile cpu, block io for query 問題sql數字號碼;
語法:Show profile type , block type for query 問題sql數字號碼
其中type:
ALL: 顯示所有的開銷信息
BLOCK IO : 顯示塊IO相關開銷
CONTEXT SWITCHS: 上下文切換相關開銷
CPU : 顯示cpu 相關開銷
IPC: 顯示發送和接收相關開銷
MEMORY: 顯示內存相關開銷
PAGE FAULTS:顯示頁面錯誤相關開銷信息
SOURCE : 顯示和Source_function ,Source_file,Source_line 相關的開銷信息
SWAPS:顯示交換次數相關的開銷信息
?
Status : sql 語句執行的狀態
Duration: sql 執行過程中每一個步驟的耗時
CPU_user: 當前用戶占有的cpu
CPU_system: 系統占有的cpu
Block_ops_in : I/O 輸入
Block_ops_out : I/O 輸出
3、日常開發需要注意的結論:
? ? ? ? 3.1 ??converting HEAP to MyISAM : 查詢結果太大,內存都不夠用了,往磁盤上搬了;
? ? ? ? ? 3.2 ??creating tmp table :創建臨時表,拷貝數據到臨時表,然后再刪除;
? ? ? ? ? 3.3 ??copying to tmp table on disk :把內存中臨時表復制到磁盤,危險!!!
? ? ? ? ? 3.5 ??locked
? ? ? ? ? 注:以上四個中若出現一個或多個,表示sql 語句 必須優化。
總結
以上是生活随笔為你收集整理的Mysql show profile 详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 团队任务:第二次冲刺-第三组梦之队
- 下一篇: mysql translate 函数_O