MySQL如何删除binlog日志文件

MySQL如何删除binlog日志文件呢?

1、使用命令手动在操作系统中删除,但是这种删除并没有从数据库逻辑层面删除,数据库里还记录着这条日志,可能会有一些问题。
进入到MySQL数据目录下,rm -rf +日志文件

在这里插入图片描述
2、使用SQL命令删除,该命令执行成功后,Linux系统中的binlog物理文件也会被删除。
登录到数据库中,查询binlog日志文件信息

show binary logs;

在这里插入图片描述
1> 删除单条binlog日志文件

purge binary logs to 'mysql_bin.000621'

在这里插入图片描述
2> 删除某个日期前的binlog日志文件

purge binary logs before '2024-10-17 14:05:00'

在这里插入图片描述
3> 删除某天前的binlog日志文件

purge binary logs before date_sub(now(), interval 0 day);

在这里插入图片描述
3、设置自动清理binlog日志
在my.cnf配置文件中添加

expire_logs_day=7

在这里插入图片描述

然后重启数据库服务,数据库就会自动删除7天前的binlog日志。