22

为什么我不能在 CentOS 6.4 上的 MySQL 5.6 上使用 slow_query_log?

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
...

## Logging

## *** THESE LOGS WORK JUST FINE ***
log_error                       = /var/log/mysql/error.log
general_log_file                = /var/log/mysql/mysql.log
general_log                     = 1

## *** THESE LOGS BREAK MYSQL ***
#log_slow_queries               = /var/log/mysql/slow.log
#long_query_time                = 5
#log-queries-not-using-indexes

这是/var/log/mysql目录:

$ ls -lh
total 100K
-rw-r----- 1 mysql root   47K Nov 22 06:02 error.log
-rw-rw---- 1 mysql root   42K Nov 22 06:05 mysql.log
-rw-rw---- 1 mysql mysql    0 Nov 22 06:01 slow.log

如果我取消注释中的 log_slow_query 行,/etc/my.cnf我会收到以下错误:

$ /etc/init.d/mysql restart
Shutting down MySQL.. SUCCESS!
Starting MySQL..... ERROR! The server quit without updating PID file (/var/lib/mysql/server.domain.com.pid).

我错过了什么?

4

1 回答 1

44

看起来 MySQL 改变了格式。现在slow_query_log不是log_slow_queries

这有效:

slow_query_log                  = 1
slow_query_log_file             = /var/log/mysql/slow.log
long_query_time                 = 5
于 2013-11-22T04:38:15.343 回答