mysql慢日志和错误日志以日期切割

mysql慢查询日志默认情况下统统写入到一个文件中,文件会变的越来越大,非常不方便查看分析。可以利用logrotate来对mysql慢查询日志、错误日志进行切割,便于DBA分析每日慢查询,优化数据库。 logrotate工具介绍参见《 logrotate日志管理工具》。 1. 定义日志轮滚策略 # vim mysql-log-rotate
“/data/mysql_log/slow_log_3306.log” /data/mysql_log/error_log_3306.log {
        create 600 mysql mysql
        dateext
        notifempty
        daily
        maxage 60
        rotate 30
        missingok
        compress
        olddir /data/httplogs/old_log
    postrotate
        # just if mysqld is really running
        if test -x /usr/local/mysql/bin/mysqladmin && \
           /usr/local/mysql/bin/mysqladmin ping  -uroot -pPASSWORD -S /tmp/mysql_3306.sock &>/dev/null
        then
           /usr/local/mysql/bin/mysqladmin flush-logs -uroot -pPASSWORD -S /tmp/mysql_3306.sock
        fi
    endscript
}
2. 设置计划任务 # vim /etc/crontab
59 23 * * * root ( /usr/sbin/logrotate -f /PATH/TO/mysql-log-rotate)
这样每天23点59分钟执行日志切割。 如需转载请注明出处:http://www.ttlsa.com/html/3173.html

转载于:https://my.oschina.net/766/blog/211269

猜你喜欢

转载自blog.csdn.net/weixin_33694620/article/details/91547503