如何启用MySQL查询日志? [英] How to enable MySQL Query Log?

查看:88
本文介绍了如何启用MySQL查询日志?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何启用MySQL功能,该功能记录从客户端收到的每个SQL查询语句以及该查询语句的提交时间? 我可以在phpmyadmin或NaviCat中做到吗? 如何分析日志?

How do I enable the MySQL function that logs each SQL query statement received from clients and the time that query statement has submitted? Can I do that in phpmyadmin or NaviCat? How do I analyse the log?

推荐答案

首先,请记住,该日志文件在繁忙的服务器上可能会变得很大.

对于mysql< 5.1.29:

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

To enable the query log, put this in /etc/my.cnf in the [mysqld] section

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

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

Also, to enable it from MySQL console

SET general_log = 1;

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

对于mysql 5.1.29 +

在mysql 5.1.29+中,不推荐使用log选项.要指定日志文件并启用日志记录,请在[mysqld]部分的my.cnf中使用此文件:

With mysql 5.1.29+ , the log option is deprecated. To specify the logfile and enable logging, use this in my.cnf in the [mysqld] section:

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

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

Alternately, to turn on logging from MySQL console (must also specify log file location somehow, or find the default location):

SET global general_log = 1;

还请注意,还有其他选项可以仅记录慢速查询或不使用索引的查询.

Also note that there are additional options to log only slow queries, or those which do not use indexes.

这篇关于如何启用MySQL查询日志?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆