1. 程式人生 > 其它 >Mysql效能調優-工具篇

Mysql效能調優-工具篇

EXPLAIN

首先祭出官方文件(這是5.7的,請自行選擇版本):

Understanding the Query Execution Plan

英文不想看,就看這篇吧:

全網最全 | MySQL EXPLAIN 完全解讀

PROFILING

PROFILING在未來版本會廢棄,不建議使用。官方文件:

SHOW PROFILE Statement

官方推薦的替代方式:

Query Profiling Using Performance Schema

如果安裝了navicat(版本15,其他版本沒測試),直接執行SQL,在結果旁邊的剖析,就是結果。

OPTIMIZER TRACE

  1. 檢視是否開啟,預設是禁止的。

    SHOW VARIABLES LIKE 'optimizer_trace';
    

    enabled:是否開啟

    one_line:是否在一行輸出

  2. 開啟

    SET OPTIMIZER_TRACE="enabled=on";
    
  3. 執行想要除錯的SQL

  4. 檢視上一個查詢的優化過程

    SELECT * FROM information_schema.OPTIMIZER_TRACE;
    
注意:以上過程請不要使用navicat,否則OPTIMIZER_TRACE表是沒有資料的。

這是官方文件描述:

Tracing the Optimizer

這是官方案例:

Example

英文不想看,就看這篇吧:

MySQL 調優 | OPTIMIZER_TRACE詳解