I'm having problems enabling binary logging on mySQL 4.1.20
After adding
log-bin=/var/log/mysql/tts_dbto my.cnf, mysql fails to restart, with the following error in mysqld.log:
091112 03:36:37 mysqld started /usr/libexec/mysqld: File '/var/log/mysql/tts_db.000001' not found (Errcode: 13) 091112 3:36:37 [ERROR] Could not use /var/log/mysql/tts_db for logging (error 13). Turning logging off for the whole duration of the MySQL server process. To turn it on again: fix the cause, shutdown the MySQL server and restart it. 091112 3:36:37 [ERROR] Aborting 091112 3:36:37 [Note] /usr/libexec/mysqld: Shutdown complete 091112 03:36:37 mysqld ended
Whilst looking at it to ask this question, I may have stumbled on the answer, but I'll check anyway - I can't restart the server until tomorrow morning. The mysql directory (/var/log/mysql) is owned by root. Is this problem because the mysql user that the server runs as doesn't have the correct privileges for creating a file in the directory?
Here's the complete my.cnf ( i know the log-bin is commented out - this is the current one)
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock set-variable=local-infile=0 set-variable = max_connections=130 long_query_time = 1 log-slow-queries =/var/log/mysql/mysql-slow.log # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 skip-bdb # We can't skip networking because the phpList server is on a different server. #skip-networking set-variable = innodb_thread_concurrency=2 table_cache = 512 query_cache_size = 20M key_buffer_size = 64M thread_cache_size = 10 tmp_table_size = 48M # Added 11 Nov 2009 to enable binary logging for replication server-id = 1 #log-bin=/var/log/mysql/tts_db #expire-logs-days = 2 #max_binlog_size = 500M #binlog-do-db=tts_db #============================================================================== # mysql.server section #============================================================================== # [mysql.server] user=mysql basedir=/var/lib #============================================================================== # mysqd_safe section #============================================================================== # [mysqld_safe] err-log=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid skip-bdb set-variable = innodb_thread_concurrency=2 table_cache = 512 query_cache_size = 20M key_buffer_size = 64M thread_cache_size = 10 tmp_table_size = 48M open-files-limit = 4096