MySQL 慢查询日志不起作用

MySQL 慢查询日志不起作用

我需要帮助诊断故障

我有一台开发服务器和一台生产服务器。它们的设置(大部分)相同。两者都是 Ubuntu Server 10.04 LTS 安装。

我在两台服务器上都启用了 MySQL 慢查询日志,它在开发服务器上可以正常工作,但在生产服务器上却不行。在开发服务器上,慢查询日志很快就填满了,但在生产服务器上,日志文件仍然是空的。

你知道我该如何诊断为什么它无法在生产中工作吗?是否有任何错误日志可能包含该信息?

中没有任何明显相关的东西/var/log/mysql/error.log,并且/var/log/mysql/mysql-slow.log实际上存在——它只是空的。

我的.cnf:

log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 2

谢谢您的指导。

答案1

我会检查 MySQL 服务器版本以获取要使用的正确参数,因为它们之间存在差异。

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

这表明log_slow_queries从 5.1.29 版开始该功能已弃用,您需要使用slow_query_log = 1来启用它,然后slow_query_log_file = /path/to/file.name

在 5.1.29 之前,您可以log_slow_queries = /path/to/file.name指定将查询记录到何处。

在 5.1.12 和 5.1.29 之间,您可以使用任一版本。

可能是您的生产箱是 5.1.29 或更高版本,而您的开发箱是 5.1.29 之前的版本,因此可以理解您正在使用的选项,而生产箱不能......

答案2

你能具体说明一下什么是“不起作用”吗?是系统崩溃吗?选择未返回正确信息?表格未更新?

一般而言,工具包括:

解释语句(http://dev.mysql.com/doc/refman/5.0/en/explain.html

显示进程列表(http://dev.mysql.com/doc/refman/5.1/en/show-processlist.html

常规查询日志(http://dev.mysql.com/doc/refman/5.0/en/query-log.html

还有其他调查途径。

相关内容