如何在不重新启动MySQL的情况下启用MySQL慢查询日志?

我们可以借助SET语句启用MySQL慢查询日志。

以下是语法。

SET GLOBAL slow_query_log = 'Value';

在以上语法中,值可以用ON / OFF填充。要启用慢速查询日志,请让我们查看查询。

mysql> SET GLOBAL slow_query_log = 'ON';

要检查慢速查询是否打开,请实施以下查询-

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;

检查是否插入了时间。

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;

注意-我们可以借助my.cnf文件永久禁用它。设置slow_query_log = 0; 禁用。