Mysql
MySQL慢查詢日誌記錄所有查詢
我們有一個 MySQL 5.1.52 Percona Server 11.6 實例,它突然開始將每個查詢記錄到慢查詢日誌中。
long_query_time
配置設置為,然而1
,突然間我們看到了每一個查詢(例如,剛剛看到了一個查詢0.000563s
!)。結果,我們的日誌文件以瘋狂的速度增長。我們只需要截斷一個 180G 的慢查詢日誌文件。我嘗試將 long_query_time 變數設置為一個非常大的數字,以查看它是否完全停止(
1000000
),但結果相同。show global variables like 'general_log%'; +------------------+--------------------------+ | Variable_name | Value | +------------------+--------------------------+ | general_log | OFF | | general_log_file | /usr2/mysql/data/db4.log | +------------------+--------------------------+ 2 rows in set (0.00 sec) show global variables like 'slow_query_log%'; +---------------------------------------+-------------------------------+ | Variable_name | Value | +---------------------------------------+-------------------------------+ | slow_query_log | ON | | slow_query_log_file | /usr2/mysql/data/db4-slow.log | | slow_query_log_microseconds_timestamp | OFF | +---------------------------------------+-------------------------------+ 3 rows in set (0.00 sec) show global variables like 'long%'; +-----------------+----------+ | Variable_name | Value | +-----------------+----------+ | long_query_time | 1.000000 | +-----------------+----------+ 1 row in set (0.00 sec)
聽起來像是
log_queries_not_using_indexes
啟用了。通過執行以下操作進行檢查:
mysql> show global variables like 'log_queries%'; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | log_queries_not_using_indexes | ON | +-------------------------------+-------+
關閉它:
mysql> set global log_queries_not_using_indexes = 'off'; Query OK, 0 rows affected (0.00 sec)