20130612

logrotate를 이용한 mysql log 관리

mysql 의 logs 관리


나는 기본적으로 /usr/local/ 에 프로그램을 설치를 한다.

그래서 mysql 의 경우에는 /usr/local/mysql 로 설치를 한다.

그리고 로그는 해당 프로그램의 하위 폴더에 두어 관리를 한다.

mysql의 logs 관리 폴더는 /usr/local/mysql/logs/... 로 관리한다.


log 관리를 logrotate를 활용하여 해보자.

/etc/logrotate.d/ 안에 mysql 파일을 만들어 아래 내용을 작성.

이렇게 하면 /etc/cron.daily/logrotate 알아서 관리

/var/log/mysql-slow.log {
ifempty
        daily
        rotate 3
        missingok
        size=10M
        compress
        postrotate

        if test -x /usr/local/mysql/bin/mysqladmin && \
                /usr/
local/mysql/bin/mysqladmin ping &>/dev/null
        then
                /usr/
local/mysql/bin/mysqladmin flush-logs
        fi
                endscript
}

Articles