如何在不重新启动 MySQL 的情况下启用 MySQL 慢查询日志?
我们可以借助 SET 语句启用 MySQL 慢查询日志。
以下为语法。
SET GLOBAL slow_query_log = 'Value';
在上述语法中,值可以填入 ON/OFF。要启用慢查询日志,让我们看一下查询。
mysql> SET GLOBAL slow_query_log = 'ON'; Query OK, 0 rows affected (0.00 sec)
要检查慢查询是否开启,请执行以下查询 −
mysql> SHOW GLOBAL VARIABLES LIKE 'slow\_%';
以下是输出。
+---------------------+--------------------------+ | Variable_name | Value | +---------------------+--------------------------+ | slow_launch_time | 2 | | slow_query_log | ON | | slow_query_log_file | DESKTOP-QN2RB3H-slow.log | +---------------------+--------------------------+ 3 rows in set (0.00 sec)
我们已将慢查询时间设置为秒,因为如果任何查询超过给定秒数,它将进入慢查询日志文件。
我们还可以设置秒数。以下是设置秒数的查询。
mysql> SET GLOBAL long_query_time = 20; Query OK, 0 rows affected (0.00 sec)
检查时间是否已插入。
mysql> SHOW GLOBAL VARIABLES LIKE 'long_query_time';
以下是上述查询的输出。
+-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 20.000000 | +-----------------+-----------+ 1 row in set (0.00 sec)
完成上述任务后,我们需要清除日志。
mysql> FLUSH LOGS; Query OK, 0 rows affected (0.25 sec)
注意 − 我们可以借助 my.cnf 文件永久禁用它。设置 slow_query_log = 0; 以禁用。
广告