您好,登錄后才能下訂單哦!
小編給大家分享一下MySQL如何開啟慢查日志,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
在開發(fā)項目中,我們可以通過MySQL的慢查詢日志對有效率問題的SQL進行監(jiān)控。
下面一些命令是開啟日志:
查找慢查詢日志文件的目錄
show variables like 'slow_query_log'
設置慢日志文件目錄文件
set global slow_query_log_file='home/mysql/sql_log/mysql_slow.log'
是否把沒有使用索引的sql記錄在日志中
set global log_queries_not_using_indexes=on
設置超過多少秒的sql記錄在日志中
set global long_query_time=1
在這里這個時間通常比較大,最好設置在0.01s比較好,更具自己的情況而定。
下面我們實際的來執(zhí)行一下命令:
首先查看日志文件位置:
可以看出我們的slow_query_log是off,說明我們沒有開啟慢查日志。
通過show variables like '%log'
命令查看日志的狀態(tài),如果我們的log_queries_not_using_indexes選項為OFF,
那我們就需要對他設置為on開啟。
然后在通過命令查看long_query_time的值是否被設置,如果為0,就說明不管是什么查詢都會被記錄在日志當中。
這里需要注意在生成環(huán)境中,短時間可能會有大量的日志。
下面我們看下日志的存儲格式:
格式如下:
#查詢的執(zhí)行時間 #Time:140606 12:30:17 #SQL執(zhí)行的主機信息 #User@Host:root[root] @ localhost [] #SQL的執(zhí)行信息,查詢執(zhí)行時間 鎖定時間 發(fā)送的行數和掃描的行數 #Query_time:0.000031 Locak_time:0.000000 Rows_sent:0 Rows_examined:0 #SQL執(zhí)行時間 SET timestamp=1402029017; #執(zhí)行的SQL內容 show tables;
以上是“MySQL如何開啟慢查日志”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。