MySQL开启日志记录查询/执行过的SQL语句

前言

开发人员遇到数据库问题的时候应该通过分析SQL语句来跟进问题所在,该方法可以记录所有的查询/执行的SQL语句到日志文件。

运用场景

本人实在做mysql数据库读写分离的时候想看看主从数据库都是运用的什么sql,所以才开启此日志,不使用的时候记得关掉,否则会大量占用磁盘空间(切记)

临时开启Log步骤

1.查看LOG功能

首先,查看是否已经开启实时SQL语句记录。

mysql> SHOW VARIABLES LIKE "general_log%";

结果如下图:
在这里插入图片描述
**本人使用的Navicat客户端,当然了,在Linux中也可以使用命令行**

2.打开Log功能(临时性)

如下,打开实时记录SQL语句功能,并指定自定义的log路径:

mysql> SET GLOBAL general_log = 'ON';

下面这项可以不配置,也有默认的,随便。

mysql> SET GLOBAL general_log_file = '/var/log/mysql/general_log.log';

这两个命令在MySQL重启后失效,为临时方法。
说明:这个文件会随着访问的增加而不断变大,所以生产环境建议临时开启,用完及时关闭。

永久开启Log步骤

1.需要编辑my.cnf文件

vim /etc/my.cnf

加入下面两行

general_log = 1
general_log_file = /var/log/mysql/general_sql.log

2.重启mysql生效

service mysqld restart

此命令时CentOS6版本,7的命令有所改变

3.实时查看/也可使用Xftp

过一小段时间后,就可以导出查看/var/lib/mysql/sql_statement.log文件了,里面记录了所有执行的SQL语句。
如果要实时查看该文件的改动,在Linux系统用

tail -f /var/lib/mysql/general_sql.log
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值