SQL------SQL效能分析

韵献發表於2024-07-27

SQL效能分析
●SQL執行頻率
MySQL客戶端連線成功後,透過show[session | global]status命令可以提供伺服器狀態資訊。透過如下指令,可以檢視當前資料庫的insert、update、delete、select的訪問頻次:
show globa status like 'Com_______';檢視當前資料庫的全域性SQL語句的訪問頻次

●慢查詢日誌
慢查詢日誌記錄了所有執行時間超過指定引數(long_query_time,單位:秒 ,預設10秒)的所有SQL語句的日誌。
MySQL的慢查詢日誌預設沒有開啟,需要在MySQL的配置檔案(/etc/my.cnf)中配置如下:

  #開啟MySQL慢日誌查詢開關
  slow_query_long=1
  #設定慢日誌的時間為2秒,SQL語句執行時間超過2秒,就會被視為慢查詢,記錄慢查詢日誌
  long_query_time=2

●profile詳情

  show profiles 能夠在做SQL最佳化時幫助我們瞭解時間都耗費到哪裡去了。

  透過have_profiling引數,能夠看到當前MySQL是否支援profile操作:

        select @@have_profiling;

  預設profiling是關閉的,可以透過set語句在session/globa級別開啟profiling:

        set profiling = 1;

相關文章