如何启用MySQL函数来记录从客户端收到的每条SQL查询语句以及该查询语句提交的时间?

推荐答案

首先,Remember that this logfile can grow very large on a busy server.

For mysql < 5.1.29:

要启用查询日志(log),请将其放在[mysqld]部分的/etc/my.cnf

log   = /path/to/query.log  #works for mysql < 5.1.29

另外,要从MySQL控制台启用它

SET general_log = 1;

http://dev.mysql.com/doc/refman/5.1/en/query-log.html

For mysql 5.1.29+

对于mysql 5.1.29+,不推荐使用log选项.要指定日志(log)文件并启用日志(log)记录,请在my中使用它.[mysqld]节中的cnf:

general_log_file = /path/to/query.log
general_log      = 1

或者,要从MySQL控制台打开日志(log)记录(还必须以某种方式指定日志(log)文件位置,或找到默认位置):

SET global general_log = 1;

还要注意的是,还有一些附加选项可以只记录慢速查询,或者不使用索引的查询.

Mysql相关问答推荐

如何根据mysql中的用户组获取文档?

配置MySQL服务器以管理数千个表

拒绝非超级用户访问停靠的MariaDB(超级用户工作)

从insert语句获取新生成的虚拟UUID

GoRM中行最大值查询返回"0"

多列分组并进行求和

为什么我的 SQL 查询不更新 Node.js 和 MySQL 中用户以外的用户属性?

基于多个 where 子句在规范化表中查找公共 ID(值)

使用适配器设计模式和外观设计模式实现

为什么以及如何将 Django filter-by BooleanField 查询转换为 SQL WHERE 或 WHERE NOT 而不是 1/0?

在一个 SQL 查询中对同一列中相同类型的不同值求和

为什么在有 BEGIN 和 END 时为存储过程指定分隔符?

无法在两个 mysql 表上执行内部联接

MySQL:使用来自查询的信息创建一个新表

在 Android 上运行 AMP (apache mysql php)

如何使用 phpmyadmin 复制数据库?

#1146 - 表 'phpmyadmin.pma_recent' 不存在

错误:无法构建 gem 本机扩展(rails 3.2.3 上的 mysql2)

如何将具有相同列值的mysql行分组为一行?

MySQL - 重复表