通用查询日志(general query log)用来记录用户的所有操作,包括启动和关闭MySQL服务、所有用户的连接开始时间和截止时间、发送给MySQL数据库服务器的所有SQL指令等。当我们的数据发生异常时,查看通用查询日志,还原操作时的具体场景,准确定位问题。
show variables like '%general%';
默认情况下,通用查询日志处于关闭状态,需要手动进行启动。
方式一:永久性启动
修改my.cnf
,或者my.ini
配置文件来设置。在mysqld
组下加入log选项,并重启MySQL服务。
[mysqld]
general_log=ON
general_log_file=[path[filename]] # 日志文件所在目录,filename是日志文件名
如果不指定目录和文件名,通用查询日志将默认存储在MySQL数据目录中的hostname.log文件中,hostname表示主机名。
方式二:临时性启动
连接MySQL客户端,使用命令的方式进行启动:
set global general_log=on;
set global general_log_file='path/filename';
set global general_log=off;
查看设置后的情况:
show variables like '%general%';
如果数据的使用非常频繁,那么通用查询日志会占用服务器非常大的磁盘空间。数据管理员可以删除很长时间之前的查询日志,以保证MySQL服务器上的硬盘空间。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。