本站所有文章均为原创,如对您有帮助,恳请帮忙点击任何一处广告
  • 首页
  • Shell
  • 【实用脚本】MySQL慢查询日志的切割与清理

【实用脚本】MySQL慢查询日志的切割与清理

发布:TangLu2020-2-8 17:44分类: Shell 标签: mysql shell

MySQL的慢查询日志默认是全部写在同一个文件中,随着日志量的增大,这个文件的体积也会越来越大,后期进行日志分析则会消耗很多不必要的时间。虽然通过logratate可以配置日志轮询,但是相对麻烦,这里推荐使用最简单的cp命令对慢日志进行备份实现按天切割的效果

DATE=`date +'%Y%m%d'`
cp -ar /data/dblog/mysql3310/mysql.slow  /data/dblog/mysql3310/mysql.slow.${DATE}
>/data/dblog/mysql3310/mysql.slow

这里有个问题需要注意,如果是单纯的想去清理慢日志,直接使用echo >这样是不行的,因为文件句柄还被占用,磁盘空间并不会得到释放,所以正确的做法是增加一个mysqladmin命令对慢日志进行刷新的步骤

#!/bin/bash
slowlog=/data/dblog/mysql3310/mysql.slow
mv $slowlog /data/dblog/mysql3310/mysql.slow.`date +%Y%m%d`
mysqladmin -uroot -p123456 -S /tmp/mysql3310.sock flush-logs slow 2>/dev/null


温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
et_highlighter51
版权所有:《Linux运维技术学习站点
文章标题:《【实用脚本】MySQL慢查询日志的切割与清理
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-462.html  [生成短网址]

已有 0/1968 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~