面试官:如何正确的清理Mysql数据库binlog日志?
概述
今天主要分享下mysql数据库应该如何正确的删除binlog日志,这里要注意不要强制使用rm命令进行清除。否则mysq-bin.index错乱,最终导致后期expire-log-days配置项失效。
1、查看binlog日志
mysql> show binary logs;

2、删除某个日志文件之前的所有日志文件
purge binary logs to 'mysql-bin.000035';

3、清理2019-09-09 13:00:00前binlog日志
PURGE MASTER LOGS BEFORE '2019-09-09 13:00:00';

4、清理3天前binlog日志
PURGE MASTER LOGS BEFORE DATE_SUB(NOW( ), INTERVAL 3 DAY); --BEFORE,变量的date自变量可以为'YYYY-MM-DD hh:mm:ss'格式。这里的清理是指从此刻-3243600s前的文件,是此文件最后更新的时间。 --时间和文件名一定不可以写错,尤其是时间中的年和文件名中的序号,以防不小心将正在使用的binlog删除!!! --切勿删除正在使用的binlog!!!
5、重置所有的日志
reset master;

6、手动切换binlog日志
flush logs --或者flush binary logs

当你某天把所有binlog日志全干掉,数据库没有产生新的日志的时候就可以用手动切换这个方式来产生了..
相关推荐
-
「nginx」十、nginx的location配置详解2026-07-04 00:51:45 -

最清晰的mysql体系架构图 ,助你深度掌握MySQL开发管理,赢在大数据时代
最清晰的mysql体系架构图 ,助你深度掌握MySQL开发管理,赢在大数据时代2026-07-04 00:21:47 -
PHP读取Excel内的图片2026-07-03 00:07:41 -
mysql:Otter跨机房数据同步(单向)2026-07-03 00:02:48 -

在windows10系统下搭建IIS+PHP+MYSQL+phpMyAdmin服务器运行环境
在windows10系统下搭建IIS+PHP+MYSQL+phpMyAdmin服务器运行环境2026-07-02 00:15:08