mysql 清理

一、清理binlog

1、运行一段时间后,mysql数据库占用磁盘很大,仔细查看后发现是*.binlog文件占用很大,一个文件接近1G

2、操作

复制代码
设置日志保留时长expire_logs_days自动删除

查看当前日志保存天数:
mysql> show variables like '%expire_logs_days%';
默认是0,也就是logs不过期.

如果数据库此时不便重启,可以设置全局的参数,使他临时生效:
mysql> set global expire_logs_days=7;
设置了只保留7天BINLOG, 下次重启mysql这个参数默认会失败

如果要永久生效,需要在my.cnf中设置
vi /etc/my.cnf
追加内容:
expire_logs_days = 7

也可以先手动删除BINLOG (purge binary logs)

删除指定的日志
mysql> PURGE {MASTER | BINARY} LOGS TO 'log_name'
例:删除binlog.1000
mysql> PURGE MASTER LOGS TO 'binlog.1000';

或删除指定日期之前的日志索引中的所有二进制日志。
mysql> PURGE {MASTER | BINARY} LOGS BEFORE 'date'
例:删除2021-06-22 12:00:00前的文件

mysql> PURGE MASTER LOGS BEFORE '2021-06-22 12:00:00';

例:删除3天前的日志
mysql> PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);
复制代码

 

posted @   kuaqi  阅读(244)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2019-09-19 绘制矩形在图片上
点击右上角即可分享
微信分享提示