查詢超過指定的時間的語句叫慢查詢
檢視慢查詢的指定的時間
show variables like 「%long%」;
show status like 「connections」;
查詢當前mysql資料庫是否開啟慢查詢日誌功能;
show varlables like 『%slow%』
1.配置慢查詢日誌存放路徑
在磁碟隨意位置建立資料夾mysqllog,並在資料夾內建立
2更改mysql/slow.log讀寫方式
資料夾右鍵-屬性-安全-編輯-新增-高階-立即查詢-everyone-編輯-安全控制-確定
3.在my.ini檔案中配置
log_slow_queries=on 開啟慢查詢
long_query_time=2 設定規定的超時時間
slow_query_log=on 開啟慢查詢的日誌
log_queries_not_using_indexes=on 如果沒有用到索引查詢,則記錄到日誌
slow_query_log_file=「d:/mysqllog/slow.log」 日誌檔案所在的磁碟路徑
slow_query_log的值是on,代表當前資料庫已經開啟了慢查詢功能;
slow_query_log_file表示慢日誌的路徑或使用show variables like 'slow_query_log_file』命令也可以檢視慢查詢日誌的路徑
還可以查詢超時多少秒算是慢查詢:
show variables like 『long_query_time』;
設定慢查詢時間
set global long_query_time=4;
設定之後再次查詢使用
show global variables like 『long_query_time』;
查詢有多少條慢查詢
show global status like 『%slow_queries%』;
檢視慢查詢日誌的儲存方式
show variables like 『%log_output%』;
設定set global log_output=『table』;
該系統變數指定未使用索引的查詢也被記錄到慢查詢日誌中(可選項)。
如果調優的話,建議開啟這個選項。
另外,開啟了這個引數,其實使用full index scan的sql也會被記錄到慢查詢日誌。
mysql> show variables like 『log_queries_not_using_indexes』;
±------------------------------±------+
| variable_name | value |
±------------------------------±------+
| log_queries_not_using_indexes | off |
±------------------------------±------+
1 row in set (0.00 sec)
設定mysql> set global log_queries_not_using_indexes=1;
query ok, 0 rows affected (0.00 sec)
mysql> show variables like 『log_queries_not_using_indexes』;
±------------------------------±------+
| variable_name | value |
±------------------------------±------+
| log_queries_not_using_indexes | on |
±------------------------------±------+
1 row in set (0.00 sec)
MySQL優化篇之慢查詢
1.什麼是mysql的慢查詢?mysql中最影響速度的就是那些 查詢非常慢的語句,這些慢的語句,可能是寫的不夠合理或者是大資料下多表的聯合 查詢等等,所以我們要找出這些語句,分析原因,加以優化。2.檢視和配置mysql慢查詢相關資訊 第一,慢查詢,這個慢,時間上是怎麼定義的?多久才算慢呢?mysql...
MySQL學習之慢查詢優化
0.先執行看看是否真的很慢,注意設定sql no cache 1.where條件單錶查,鎖定最小返回記錄表。這句話的意思是把查詢語句的where都應用到表中返回的記錄數最小的表開始查起,單錶每個字段分別查詢,看哪個欄位的區分度最高 2.explain檢視執行計畫,是否與1預期一致 從鎖定記錄較少的表...
MySQL 效能優化之慢查詢
首先需要使用慢查詢功能,去獲取所有查詢時間比較長的sql語句 最後可以使用show profile s 檢視由問題的sql的效能使用情況 優化sql語句 資料庫查詢快慢是影響專案效能的一大因素,對於資料庫,我們除了要優化sql,更重要的是得先找到需要優化的sql語句。mysql資料庫有乙個 慢查詢日...