使用logrotate对MySQL指定日志文件执行按天轮转备份-创新互联

根据自己的需要可以对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

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

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

# vim /etc/crontab

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

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:使用logrotate对MySQL指定日志文件执行按天轮转备份-创新互联
文章出自:http://scjbc.cn/article/shshd.html

其他资讯