Win a free ticket to RailsConf!


I have one free ticket to give away to RailsConf next week in Baltimore! Post a comment to win, and if you aren’t the winner, I’ll give you a discount code for Percona Live as a consolation prize.

Here’s the catch: you have to find at least one thing wrong with the following typical logrotate configuration for MySQL. This should be easy even if you’re not a MySQL expert :-)



  1. Baron Schwartz says

    Everything. Finding things wrong with it is like shooting fish in a barrel. I’ll blog about it someday.

  2. W. Andrew Loe III says


    What are the correct answers to the questions? What is busted with syslog logging?

  3. vegivamp says

    Hmm. If I remember logrotate correctly, the compress gets executed before the flush-logs; so you run the risk of adding lines to an already-compressed logfile – and maybe lines added *during* compression will be lost depending on the compression utility’s behaviour.

  4. Chunhui Huang says

    When you run “flush logs”, the mysqld.log will be rename to mysqld.log-old

  5. Baron Schwartz says

    Vitaly, I either confused you, or you are extremely clever and funny :)

    I’ll write a blog post sometime about what’s wrong with the default logrotate scripts for MySQL. The free ticket goes to John!

  6. Vitaly Tskhovrebov says

    * It’s a bit harder to ‘rotate’ mysql databases then a text files;
    * InnoDB row will not exceed 8000 bytes under some conditions;
    * MySQL is an additional point of failure;

    Is it enough? :-)

  7. Baron Schwartz says

    For bonus points (but no bonus tickets), tell me what’s busted about logging to syslog with MySQL, too!

  8. John Paul Ashenfelter says

    You don’t want the “create 600 mysql mysql” line — it’s commented out in the default config.

    But the real problem is you’re logging to a file and not syslog :)

Leave a Reply

Your email address will not be published. Required fields are marked *