1. 程式人生 > 實用技巧 >MySql慢查詢

MySql慢查詢

1、開局先總結,後面的教程所用程式碼如下

-- 檢視慢查詢是否開啟,OFF為關閉狀態
show variables like 'slow_query%';
-- 開啟慢查詢
set global slow_query_log = on; 
-- 檢視設定的慢查詢時間,預設的是10秒
show variables like 'long_query_time';
-- 設定慢查詢的臨界點,單位為秒
set long_query_time = 1;
-- 設定慢查詢的儲存方式file是檔案儲存,table是儲存在slow_log表中
set globle log_output = file;
-- 查詢慢查詢日誌的開啟狀態和日誌儲存的位置
show variables like 
'%quer%'; -- 引數說明: -- slow_query_log : 是否已經開啟慢查詢 -- slow_query_log_file : 慢查詢日誌檔案路徑 -- long_query_time : 超過多少秒的查詢就寫入日誌 -- log_queries_not_using_indexes 如果值設定為ON,則會記錄所有沒有利用索引的查詢

2、查詢慢查詢開啟的狀態:show variables like 'slow_query%';

2.1開啟慢查詢:set global slow_query_log = on;

3查詢慢查詢時間臨界點:show variables like 'long_query_time';(預設為10秒)

3.1設定慢查詢的臨界點:set long_query_time = 2;(2為2秒,設定的時間單位為秒)

4檢視慢查詢的開啟狀態和檔案儲存方式(檔案預設為file儲存,可以改成table儲存,修改方式見4.1):show variables like '%quer%';

4.1修改檔案儲存方式為table,檢視日誌直接看錶slow_log:set globle log_output = TABLE;

4.2檢視慢查詢的日誌儲存方式:show variables like '%log_output%';

5驗證慢查詢是否開啟:select * from slow_log