mysql binlog日志删除清理

删除mysql的binlog日志有两种方法:自动删除和手动删除

1.自动删除

永久生效:

修改mysql的配置文件my.cnf,添加binlog过期时间的配置项:expire_logs_days=30,然后重启mysql,这个有个致命的缺点就是需要重启mysql。

临时生效:

expire_logs_days参数只支持整数,且范围是[0,99]
进入mysql,

查看现在配置:show variables like 'expire_logs_days';
用以下命令设置全局的参数:set global expire_logs_days=30;
刷一下log使上面的设置生效,否则不生效:flush logs; 
(上面的数字30是保留30天的意思。)

2.手动删除

可以直接删除binlog文件,但是可以通过mysql提供的工具来删除更安全,因为purge会更新mysql-bin.index中的条目,而直接删除的话,mysql-bin.index文件不会更新。mysql-bin.index的作用是加快查找binlog文件的速度。

1、首先登录的mysql

2、查看binlog 日志文件 mysql> show binary logs;

3、删除举例:

清除3天前的 binlog
PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);

RESET MASTER;//删除所有binlog日志,新日志编号从头开始

PURGE MASTER LOGS TO ‘mysql-bin.010’;//删除mysql-bin.010之前所有日志

PURGE MASTER LOGS BEFORE ‘2003-04-02 22:46:26’;// 删除2003-04-02 22:46:26之前产生的所有日志

个人感觉还是最下面的好用,当执行时提示0条响应,实现是已经把3天之前的binlog文件已经删除掉了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值