导航

Win10下,配置Mysql开启请求日志

Posted on 2023-06-28 16:38  蝈蝈俊  阅读(192)  评论(0编辑  收藏  举报

当我们在调试程序时,需要知道最终发给Mysql的是啥语句,这时候就要看Mysql收到的请求了。

Mysql有四种日志:

  1. Error Log (错误日志),记录MySQL运行过程ERROR,WARNING,NOTE等信息,系统出错或者某条记录出问题可以查看ERROR日志。

  2. General Query Log (日常运行日志),记录MySQL运行中的每条请求数据。

  3. Binary Log (二进制日志),包含了一些事件,这些事件描述了数据库的改动,如建表、数据改动等,也包括一些潜在改动,主要用于备份恢复、回滚等操作。

  4. Slow Query Log(慢查询日志),用于MySQL性能调优。

我们这里要用到第二种。

是否开启了这种日志,可以通过下面命令查看:

show variables like 'general_log%'

另外,我们通过搜索

show variables like '%log_%'

可以看到 win10 下 ,相关的日志、数据库文件是在下面这个目录下:

C:\ProgramData\MySQL\MySQL Server 8.0\Data

在 C:\ProgramData\MySQL\MySQL Server 8.0 目录下,我们可以看到my.ini配置文件。

我们启用这个日志记录的功能,也可以修改这个配置文件,如下 general-log=1 这里1是启用,0是不启用。

# General and Slow logging.
log-output=FILE

general-log=1

general_log_file="DESKTOP-KFOBJL4.log"

完成设置后,重启mysql服务,即可生效。

我们就可以在 C:\ProgramData\MySQL\MySQL Server 8.0\Data 目录下看到请求日志。

此外,你还可以通过查询 mysql.general_log 或 mysql.slow_log 表来查看日志,如果你已经设置了将日志记录到表中。例如:

SELECT * FROM mysql.general_log ORDER BY event_time DESC LIMIT 10;

SELECT * FROM mysql.slow_log ORDER BY start_time DESC LIMIT 10;

请注意,长时间保持日志记录开启可能会占用大量的磁盘空间。因此,通常我们只在需要的时候临时开启,解决问题后再关闭。