MySQL 的 SHOW PROFILE 功能可詳細展示 SQL 語句在各階段的資源消耗,是效能調優的利器。本文示範如何啟用並分析 CREATE TABLE 的耗時分布。
mysql> SHOW VARIABLES LIKE '%pro%';
-- profiling 預設為 OFF
mysql> SET profiling = 1;
mysql> SHOW VARIABLES LIKE '%pro%';
-- 確認已變為 ON
mysql> CREATE TABLE test_cpny.listed_cpny_fin_rpt_prd (...);
mysql> SHOW PROFILES;
-- 找到對應 Query_ID
mysql> SHOW PROFILE FOR QUERY ;
輸出範例顯示耗時主要集中在 Sending data 階段(29.96 秒),提示數據傳輸或寫入為瓶頸。

控制保留的語句數量,預設 15,最大 100。設為 0 即禁用 profiling。
mysql> SHOW VARIABLES LIKE 'profiling_history_size';
Performance Schema。