mysql查看执行sql语句的记录日志
1、使用processlist,但是有个弊端,就是只能查看正在执行的sql语句,对应历史记录,查看不到。好处是不用设置,不会保存。
use information_schema;
show processlist;
或者:
select * from information_schema.`PROCESSLIST` where info is not null;
2、开启日志模式
1、设置
SET GLOBAL log_output = 'TABLE';SET GLOBAL general_log = 'ON'; //日志开启
SET GLOBAL log_output = 'TABLE'; SET GLOBAL general_log = 'OFF'; //日志关闭
2、查询
SELECT * from mysql.general_log ORDER BY event_time DESC;
3、清空表(delete对于这个表,不允许使用,只能用truncate)
truncate table mysql.general_log;
在查询sql语句之后,在对应的data/mysql文件夹下面有对应的log记录
general_log.CSV文件
ps:在查询到所需要的记录之后,应尽快关闭日志模式,占用磁盘空间比较大