开启 general log 将所有到达MySQL的SQL语句记录下来。
一般不会开启开功能,因为log的量会非常庞大。但个别情况下可能会临时的开一会儿general log以供排障使用。
相关参数一共有3:general_log、log_output、general_log_file
-
show variables like 'general_log'; -- 查看日志是否开启
-
set global general_log=on; -- 开启日志功能
-
show variables like 'general_log_file'; -- 看看日志文件保存位置
-
set global general_log_file='tmp/general.lg'; -- 设置日志文件保存位置
-
show variables like 'log_output'; -- 看看日志输出类型 table或file
-
set global log_output='table'; -- 设置输出类型为 table
-
set global log_output='file'; -- 设置输出类型为file
mysql数据库支持同时两种日志存储方式,配置的时候以逗号隔开即可,如:log_output=‘FILE,TABLE‘.日志记录到系统专用日志表中,要比记录到文件耗费更多的系统资源,因此对于需要启用慢查日志,又需要比够获得更高的系统性能,那么建议优先记录到文件.
2.开启数据库general_log步骤
先执行sql指令:show variables like ‘%log%’;
可以看到默认general_log是OFF的
直接开启:set global general_log = ON;(说明:此参考可以动态修改,但是重启mysql失效,弱要永久生效,则需要修改需要在my.cnf的【mysqld】中添加:general_log = 1)