I'm running MySQL 4.0.23 on a Debian Sarge system. Often, when I reboot twice in a short time period, MySQL doesn't seem to shut down gracefully -- it takes a long time for it to come up fully, and if I reboot before that, I get a lot of log messages. I think it takes about an hour to come up fully, although the system is an Athlon XP 2200+ CPU with 2G RAM and not a huge amount of other activity.
My first concern is figuring out how to avoid getting hundreds of thousands of messages in syslog -- right now grep mysql /var/log/syslog | wc -l gives 366635 and counting just for today. The log messages look like this: Jul 22 16:29:01 bostoncoop mysqld[1993]: mysql tables in use 1, locked 0 Jul 22 16:29:01 bostoncoop mysqld[1993]: MySQL thread id 252, query id 8143 localhost tpryor statistics Jul 22 16:29:01 bostoncoop mysqld[1993]: /* LinkCache::addLinkObj */ SELECT page_id FROM `page` WHERE page_namespace = '0' AND page_title = 'Zwijnaarde' LIMIT 1 Jul 22 16:29:01 bostoncoop mysqld[1993]: ---TRANSACTION 0 0, not started, process no 1992, OS thread id 2954361776 waiting in InnoDB queue There's also a bunch of INNODB MONITOR OUTPUT. I'd like these messages not to get logged at all -- it's far too many to be useful. Second, I'd like to have MySQL log to /var/log/mysql/mysql.log rather than syslog. my.cnf seems to be very poorly documented on this issue. It says it is a "performance killer" to log to a specific file -- presumably, using the syslog facility gives better performance. But I can't find any way to filter the syslog logging back to a separate log file -- for example, by setting the syslog facility for MySQL as you can in PostgreSQL. The only documentation in MySQL relating to syslog facility configuration is in the clustering section, which I don't believe has anything to do with what I'm doing. Third, I'd like to figure out why it's taking so long for MySQL to come up; why it doesn't go down gracefully; and why there are so many log messages generated as it is coming up. My my.cnf is attached -- it's fairly standard. Thanks for any tips. -- Adam Rosi-Kessel http://adam.rosi-kessel.org
# # The MySQL database server configuration file. # # You can copy this to one of: # - "/etc/mysql/my.cnf" to set global options, # - "/var/lib/mysql/my.cnf" to set server-specific options or # - "~/.my.cnf" to set user-specific options. # # One can use all long options that the program supports. # Run program with --help to get a list of available options and with # --print-defaults to see which it would actually understand and use. # # For explanations see # http://dev.mysql.com/doc/mysql/en/server-system-variables.html # This will be passed to all mysql clients # It has been reported that passwords should be enclosed with ticks/quotes # escpecially if they contain "#" chars... # Remember to edit /etc/mysql/debian.cnf when changing the socket location. [client] port = 3306 socket = /var/run/mysqld/mysqld.sock # Here is entries for some specific programs # The following values assume you have at least 32M ram # This was formally known as [safe_mysqld]. Both versions are currently parsed. [mysqld_safe] socket = /var/run/mysqld/mysqld.sock nice = 0 [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 # Both location gets rotated by the cronjob. # Be aware that this log type is a performance killer. #log = /var/log/mysql.log #log = /var/log/mysql/mysql.log #err-log = /var/log/mysql/mysql.err basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/english max_connections = 200 default-table-type = innodb skip-external-locking # # Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. bind-address = 127.0.0.1 key_buffer = 16M max_allowed_packet = 16M thread_stack = 128K # # Query Cache Configuration # query_cache_limit = 1048576 query_cache_size = 16777216 query_cache_type = 1 # # Here you can see queries with especially long duration #log-slow-queries = /var/log/mysql/mysql-slow.log # # The following can be used as easy to replay backup logs or for replication. #server-id = 1 log-bin = /var/log/mysql/mysql-bin.log # See /etc/mysql/debian-log-rotate.conf for the number of files kept. max_binlog_size = 104857600 #binlog-do-db = include_database_name #binlog-ignore-db = include_database_name # # # InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/. # Read the manual for more InnoDB related options. There are many! # # Read the manual, too, if you want chroot! # chroot = /var/lib/mysql/ # # If you want to enable SSL support (recommended) read the manual or my # HOWTO in /usr/share/doc/mysql-server/SSL-MINI-HOWTO.txt.gz # ssl-ca=/etc/mysql/cacert.pem # ssl-cert=/etc/mysql/server-cert.pem # ssl-key=/etc/mysql/server-key.pem [mysqldump] quick quote-names max_allowed_packet = 16M [mysql] #no-auto-rehash # faster start of mysql but no tab completition [isamchk] key_buffer = 16M
-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]