在開發(fā)項目中,我們可以通過MySQL的慢查詢?nèi)罩緦τ行蕟栴}的SQL進行監(jiān)控。
下面一些命令是開啟日志:
查找慢查詢?nèi)罩疚募哪夸?br />
show variables like 'slow_query_log'
設(shè)置慢日志文件目錄文件
set global slow_query_log_file='home/mysql/sql_log/mysql_slow.log'
是否把沒有使用索引的sql記錄在日志中
set global log_queries_not_using_indexes=on
設(shè)置超過多少秒的sql記錄在日志中
set global long_query_time=1
在這里這個時間通常比較大,最好設(shè)置在0.01s比較好,更具自己的情況而定。
下面我們實際的來執(zhí)行一下命令:
首先查看日志文件位置:
可以看出我們的slow_query_log是off,說明我們沒有開啟慢查日志。
通過show variables like '%log'
命令查看日志的狀態(tài),如果我們的log_queries_not_using_indexes選項為OFF,
那我們就需要對他設(shè)置為on開啟。
然后在通過命令查看long_query_time的值是否被設(shè)置,如果為0,就說明不管是什么查詢都會被記錄在日志當中。
這里需要注意在生成環(huán)境中,短時間可能會有大量的日志。
下面我們看下日志的存儲格式:
格式如下:
#查詢的執(zhí)行時間
#Time:140606 12:30:17
#SQL執(zhí)行的主機信息
#User@Host:root[root] @ localhost []
#SQL的執(zhí)行信息,查詢執(zhí)行時間 鎖定時間 發(fā)送的行數(shù)和掃描的行數(shù)
#Query_time:0.000031 Locak_time:0.000000 Rows_sent:0 Rows_examined:0
#SQL執(zhí)行時間
SET timestamp=1402029017;
#執(zhí)行的SQL內(nèi)容
show tables;
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。
您可能感興趣的文章:- 詳解MySql的慢查詢分析及開啟慢查詢?nèi)罩?/li>
- mysql 開啟慢查詢 如何打開mysql的慢查詢?nèi)罩居涗?/li>
- MYSQL5.7.9開啟慢查詢?nèi)罩镜募记?/li>
- MySQL開啟慢查詢?nèi)罩緇og-slow-queries的方法
- MySQL慢查詢優(yōu)化之慢查詢?nèi)罩痉治龅膶嵗坛?/li>
- MySQL 開啟慢查詢?nèi)罩镜姆椒?/li>
- mysql正確安全清空在線慢查詢?nèi)罩緎low log的流程分享
- 對MySQL慢查詢?nèi)罩具M行分析的基本教程
- 根據(jù)mysql慢日志監(jiān)控SQL語句執(zhí)行效率
- MySQL中查詢?nèi)罩九c慢查詢?nèi)罩镜幕緦W習教程