MySQL 慢查询日志轮询配置

mysql 数据库慢查询日志分析是优化数据库性能的重要方式之一,随着时间积累,慢查询日志会变得越来越大,作一个每天自动切割的任务,将脚本放在/etc/logrotate.d/下,步骤如下:

新建.my.cnf

方便自动轮询日志时候自动加载用户名密码

# vim /root/.my.cnf

输入以下内容:

[client]
user=root
password=123456
socket=/var/lib/mysql/mysql.sock

在/etc/logrotate.d/下新建任务

# vim /etc/logrotate.d/mysql

输入以下内容:

/var/log/mysql/*log {
    daily
    rotate 7
    missingok
    notifempty
    delaycompress
    create 644 mysql mysql
    postrotate
        MYCNF_FILE=/root/.my.cnf
        MYSQLADMIN=/usr/bin/mysqladmin
        if test -x $MYSQLADMIN && $MYSQLADMIN --defaults-file="$MYCNF_FILE" ping >/dev/null
        then
            $MYSQLADMIN --defaults-file="$MYCNF_FILE" flush-logs
        fi
    endscript
}

重新加载cron配置

# service crond reload

这样子就新建好了慢查询日志每天分割,保留7天。