MySQL-记录sql语句执行日志

在开发过程中,使用到了MySQL数据库,但是想知道每次对数据库进行了哪些操作,方便对自己的代码进行优化,这时候就需要用到查询日志genral_log。

动态修改配置

mysql > show variables like "%general_log%";

+------------------+------------------------------+
| Variable_name | Value |
+------------------+------------------------------+


| general_log | ON |

| general_log_file | /tmp/mariadb_general_log.log |

+------------------+------------------------------+

可以看到设置到两个变量,一个是开关,一个是general_log的文件保存路径。
下面三种方法任选一个:



1.开启文件记录


mysql > set global general_log_file='/tmp/mariadb_general_log.log';
mysql > set global general_log=on;


2.配置文件里面修改

在mysqld的节点加上以下配置

general_log_file=/tmp/mariadb_general_log.log
general_log=on


3.将sql执行日志记录到表

如果不方便查看文件,也可以将日志直接存放到表里面(适合mysql数据库在远程)

mysql > set global log_output='table';
mysql > set global general_log=on;

总结

这个适用本地的开发环境,切勿在生产环境上打开

有话要说