开启 general log 将所有到达MySQL Server的SQL语句,执行后记录下来。
一般不会开启开功能,因为log的量会非常庞大。
但个别情况下,数据库语句出现问题,可以临时开一会儿general log以供排障使用。
所需的语句:
show variables like 'general_log'; -- 查看日志是否开启
set global general_log = on; -- 开启日志功能
show variables like 'general_log_file'; -- 看看日志文件保存位置
set global general_log_file='路径'; -- 设置日志文件保存位置
show variables like 'log_output'; -- 看看日志输出类型 table或file
set global log_output='table'; -- 设置输出类型为 table,将日志存入数据库,这样日志信息就会被写入
-- 到mysql.slow_log表中
set global log_output='file'; -- 设置输出类型为 file,将日志存入文件,默认值是FILE
步骤:
1.打开navicat,选择需要查询日志的数据库,输入语句并执行

2.电脑中找到日志的位置,用文件编辑器打开

3.追踪完以后,记得关闭日志哟,删除日志信息方法步骤如下:
输入以下sql语句并执行
SET GLOBAL general_log = off;
RENAME TABLE mysql.general_log TO mysql.general_log2;
DELETE FROM mysql.general_log2;
发现操作系统的数据文件还是存在的,需要手动删除该数据文件,再继续下面数据操作步骤

删除日志文件后,执行以下代码
OPTIMIZE TABLE general_log2;
RENAME TABLE mysql.general_log2 TO mysql.general_log;
SET GLOBAL general_log = off;
所有流程,所需sql语句如下

文章介绍了在MySQL服务器上开启和配置general_log以记录所有SQL语句的步骤,用于排查数据库问题。这个功能通常因生成大量日志而不常开启,但在必要时,可以通过设置全局变量来临时启用。开启后,日志可存储在文件或数据库表中,分析后记得关闭并清理日志。
2663

被折叠的 条评论
为什么被折叠?



