0

我试图启用 slow_query_log。我已经使用 WinSCP 从服务器下载了 my.cnf 文件,并添加了启用 slow_query_log 的代码。

slow_query_log = ON
slow_query_log_file = /var/log/mysql_slow.log

当我重新启动服务器时,我在mysql has failed, please contact the sysadmin (result was "mysql is not running"). 这里收到此错误,我正在添加我尝试过的 my.cnf 文件slow_query_log = 1。但得到同样的错误。当我删除我添加的代码时,错误消失了。任何人请帮助我...

我的.cnf

    [mysqld]
datadir=/home/mysql/
tmpdir=/home/mysqltmp
#max_connections = 175 #was 175
max_connections = 80
#max_connect_errors = 350 #was 250
max_connect_errors = 250
safe-show-database
skip-locking
key_buffer = 1024M # was 128M
max_allowed_packet = 6M
myisam_sort_buffer_size = 64M

#old settings, for 900 ish max maxconn
#sort_buffer_size = 32M
#read_buffer_size = 32M
#read_rnd_buffer_size = 32M

sort_buffer_size = 5M
read_buffer_size = 5M
read_rnd_buffer_size = 5M

query_cache_size= 1024M
query_cache_limit= 16M
max_heap_table_size = 128M
tmp_table_size = 128M
thread_concurrency = 16
wait_timeout = 10
innodb_file_per_table
innodb_log_file_size = 10485760
open_files_limit = 8192
low_priority_updates = 1 
slow_query_log = ON
slow_query_log_file = /var/log/mysql_slow.log

# who set these? these are NOT memory settings, but rather integer settings.
#table_cache = 1024M
#thread_cache_size = 8M

table_cache = 512
thread_cache_size = 8

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[isamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M
4

2 回答 2

0

检查所有权为 mysql.mysql 和文件权限/var/log/mysql_slow.log

ls -al /var/log/mysql_slow.log
于 2012-07-23T11:12:47.927 回答
0

在 /var/log 中创建文件 mysql_slow.log 并更改文件的所有权:

chown mysql.mysql -R /var/log/mysql_slow.log

任何一个值(1 或 ON)都应该适用于慢查询日志。

另外,您是否使用常规语句?

于 2012-07-23T11:17:44.220 回答