启用mysql日志记录执行过的sql

在mysql命令行或者客户端管理工具中执行:SHOW VARIABLES LIKE "general_log%";

结果:

general_log OFF
general_log_file /var/lib/mysql/localhost.log

OFF说明没有开启日志记录

分别执行开启日志以及日志路径和日志文件名

SET GLOBAL general_log_file = '/var/lib/mysql/localhost.log';
SET GLOBAL general_log = 'ON';

还要注意

这时执行的所有sql都会别记录下来,方便查看,但是如果重启mysql就会停止记录需要重新设置

SHOW VARIABLES LIKE "log_output%";

默认值是‘FILE‘,如果是NONE,需要设置

SET GLOBAL log_output='TABLE,FILE'

log_output=‘FILE‘表示将日志存入文件,默认值是‘FILE‘ 

log_output=‘TABLE‘表示将日志存入数据库,这样日志信息就会被写入到mysql.slow_log表中.

mysql数据库支持同时两种日志存储方式,配置的时候以逗号隔开即可,如:log_output=‘FILE,TABLE‘.日志记录到系统专用日志表中,要比记录到文件耗费更多的系统资源,因此对于需要启用慢查日志,又需要比够获得更高的系统性能,那么建议优先记录到文件.

原文地址:https://www.cnblogs.com/bjgua/p/8376363.html