mysql slow log控制 參考官方文檔:http://dev.mysql.com/doc/refman/5.6/en/slow-query-log.html ? ? ? MySQL能夠記錄執行時間超過參數 ? long_query_time ? 設置值的SQL語句,默認是不記錄的。 獲得初始鎖定的時間不算作執行時間。mysqld在SQL執行完和所有
mysql slow log控制參考官方文檔:http://dev.mysql.com/doc/refman/5.6/en/slow-query-log.html
?
?
?
MySQL能夠記錄執行時間超過參數?long_query_time?設置值的SQL語句,默認是不記錄的。
獲得初始鎖定的時間不算作執行時間。mysqld在SQL執行完和所有的鎖都被釋放后才寫入日志。且記錄順序可能不同于執行順序。
5.1.6以前mysql使用--log-slow-queries[=file_name]來開啟記錄慢的SQL。
MySQL 5.1.6:日志可以記錄在文件或是表中,由參數e?--log-output來指定日志的目標類型。
MySQL5.1.12: 使用?--slow_query_log[={0|1}]代替log-slow-queries,一個默認日志文件被使用
MySQL5.1.29: 使用slow_query_log[={0|1}]控制日志啟用,slow_query_log_file=file_name指定日志文件。log-slow-queries參數棄用。
默認:管理語句和沒有使用index的查詢將不記錄。可以通過??--log-slow-admin-statements?和?log_queries_not_using_indexes來設定是否記錄。
管理語句包括: ALTER TABLE, ANALYZE TABLE, CHECK TABLE, CREATE INDEX, DROP INDEX, OPTIMIZE TABLE,? REPAIR TABLE.
如果設置了log_queries_not_using_indexes,可能引起日志文件快速增長,可以考慮使用參數log_throttle_queries_not_using_indexes?設置每分鐘記錄能夠記錄的數量。
默認:一個復制從庫不會記錄復制查詢的日志。為了改變這個,可以使用參數--log-slow-slave-statements
直接查看慢查詢日志文件是一項艱巨的任務,我們可以使用mysqldumpslow工具來輔助。?見Section?4.6.8, “mysqldumpslow?— Summarize Slow Query Log Files”.
另外:慢查詢日志是在查詢結束后才記錄,故正在執行的慢SQL并不能被定位到,可以使用show processlist命令查看當前MySQL在進行的線程,包括線程的狀態、是否鎖表等等,可以實時地查看SQL的執行情況。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com