Mysql操作日志(general_log)详解

开启general log将将会把所有到达MySQL Server的SQL语句记录下来。一般不会开启该功能,因为log的量会非常庞大,开启后会有5%-10%的性能损耗,。但个别情况下可能会临时的开一会儿general log以供排障使用。 

相关命令

#查看日志是否开启
show variables like 'general_log';    
#看看日志输出类型 table或file       
show variables like 'log_output';    
#看看日志文件保存位置       
show variables like 'general_log_file';    

开启操作日志(general_log)

注:配置的日志路径需赋予mysql权限

方法一:设置配置文件my.cnf(需重启)

添加以下参数

[mysqld]
log_output=FILE	    #日志打印到文件,默认配置,可以配置成table,日志就会记录到mysql库中的相应的表中(slow日志也会受影响)
general_log=1
general_log_file=/var/lib/mysql/logs/query_log.log

方法二:动态设置(不重启)

登录mysql执行

mysql> set global log_output='FILE';
mysql> set global general_log=on;
mysql> set global general_log_file='/var/lib/mysql/logs/query_log.log';

  

  

posted @ 2022-04-08 02:00  RFAA  阅读(2170)  评论(0编辑  收藏  举报