MySQL slow_query_log慢查詢日志配置詳解


slow_query_log是記錄SQL執行超過一定時間的參數。

slow query log相關變量

1、命令行參數:

    --log-slow-queries

    指定日志文件存放位置,可以為空,系統會給一個缺省的文件host_name-slow.log

2、系統變量

    log_slow_queries

    指定日志文件存放位置,可以為空,系統會給一個缺省的文件host_name-slow.log

    slow_query_log

    slow quere log的開關,當值為1的時候說明開啟慢查詢。

    slow_query_log_file

    指定日志文件存放位置,可以為空,系統會給一個缺省的文件host_name-slow.log

    long_query_time

    記錄超過的時間,默認為10s

    log_queries_not_using_indexes

    log下來沒有使用索引的query,可以根據情況決定是否開啟

發現執行時間過長的SQL,有效的改善數據庫的性能時,非常有用的參數。

在這里介紹MySQL版本5.1以上里的配置方法。

修改/etc/my.cnf

slow_query_log : 無效(0或者OFF)、有效(1或者ON)
slow_query_log_file : 指定日志文件
long_query_time : 超過指定時間的SQL會記錄到日志文件(默認時間為10秒)
※MySQL5.1可以指定1秒以下的時間。

# vi /etc/my.cnf
[mysqld]

slow_query_log = 1
slow_query_log_file = /data/log/mysql/slow_query.log
long_query_time = 5

使用set global

# mysql -u<用戶名> -p <數據庫名>
Enter password: [輸入密碼]

set global slow_query_log = 1;
set global slow_query_log_file = ‘/data/log/mysql/slow_query.log';
set global long_query_time = 5;

配置有效化

重啟MySQL或者set global以后,配置才會有效。

總結

因數據庫的響應慢導致整個系統的響應慢的情況非常多,推薦大家安裝MySQL以后有效化slow_query_log。
————————————————
版權聲明:本文為CSDN博主「地表最強菜雞」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_19734597/article/details/81040219


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM