• ADADADADAD

    使用logrotate对MySQL指定日志文件执行按天轮转备份[ mysql数据库 ]

    mysql数据库 时间:2024-12-25 09:57:24

    作者:文/会员上传

    简介:

    根据自己的需要可以对MySQL的相关日志文件(错误日志、通用查询日志文件和慢查询日志文件)进行按天的转储,并只保留指定天数的备份文件,下面是一个例子:1)、安装 crond 服务 (如

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    根据自己的需要可以对MySQL的相关日志文件(错误日志、通用查询日志文件和慢查询日志文件)进行按天的转储,并只保留指定天数的备份文件,下面是一个例子:

    1)、安装 crond 服务 (如果未安装 yum install logrotate crontabs)

    rpm -qa | grep crontabs

    yum install crontabs

    chkconfig crond --list#如果未设置为自动重启这执行如下命令修改

    chkconfig crond on

    service crond restart


    2)、创建MySQL root密码文件

    vi /root/.my.cnf

    [mysqladmin]

    user = sysadmin

    password= mysql

    chmod 600 /root/.my.cnf


    3)、把mysql-log-rotate拷贝至/etc/logrotate.d目录下,修改其内容为:

    # mysql_error.log错误日志文件

    # mysql_general.log通用查询日志文件

    # mysql_slow.log 慢查询日志文件

    /app/mysql/mysql3306/logs/mysql_error.log

    /app/mysql/mysql3306/logs/mysql_general.log

    /app/mysql/mysql3306/logs/mysql_slow.log {

    # create 600 mysql mysql

    notifempty

    daily

    rotate 5

    copytruncate

    nocreate

    missingok

    compress

    dateext

    postrotate

    # just if mysqld is really running

    if test -x /app/mysql/mysql3306/bin/mysqladmin && \

    /app/mysql/mysql3306/bin/mysqladmin ping &>/dev/null

    then

    /app/mysql/mysql3306/bin/mysqladmin flush-logs

    fi

    endscript

    }


    4)执行以下命令以测试是否配置正确

    /usr/sbin/logrotate-f/etc/logrotate.d/mysql-log-rotate

    注:需要查看已备份压缩文件这执行 gunzipfile_name.gz 即可


    5)定时执行 (每天凌晨执行)

    # vim /etc/crontab

    59 23 * * * /usr/sbin/logrotate-f/etc/logrotate.d/mysql-log-rotate


    使用logrotate对MySQL指定日志文件执行按天轮转备份.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlgr按天