我是靠谱客的博主 大意西牛,最近开发中收集的这篇文章主要介绍mysql怎么删除二进制日志,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

mysql删除二进制日志的方法

二进制日志启动后,每次重启 MySQL 服务后,都会生成一个新的二进制日志文件。

二进制日志中记录着大量的信息,如果很长时间不清理二进制日志,将会浪费很多的磁盘空间。删除二进制日志的方法很多,下面介绍几种删除二进制日志的方法。

方法1:删除所有二进制日志

使用 RESET MASTER 语句可以删除的所有二进制日志,该语句的形式如下:

RESET MASTER;
登录后复制

登录 MySQL 数据库后,可以执行该语句来删除所有二进制日志。删除所有二进制日志后,MySQL 将会重新创建新的二进制日志,新二进制日志的编号从 000001 开始。

方法2:根据编号删除二进制日志

每个二进制日志文件后面有一个 6 位数的编号,如 000001。使用 PURGE MASTER LOGS TO 语句,可以删除指定二进制日志的编号之前的日志。该语句的基本语法形式如下:

PURGE MASTER LOGS TO 'filename.number';
登录后复制

该语句将删除编号小于 filename.number 的所有二进制日志。

示例:

//删除bin-log.000002之前的二进制日志
purge binary logs to 'bin-log.000002';
登录后复制

1.png

方法3:根据创建时间删除二进制日志

使用 PURGE MASTER LOGS TO 语句,可以删除指定时间之前创建的二进制日志,该语句的基本语法格式如下:

PURGE MASTER LOGS TO 'yyyy-mm-dd hh:MM:ss';
登录后复制

其中,“hh”为 24 制的小时。该语句将删除在指定时间之前创建的所有二进制日志。

示例:删除 2019-12-20 15:00:00 之前创建的二进制日志

PURGE MASTER LOGS TO '2019-12-20 15:00:00";
登录后复制

代码执行完后,2019-12-20 15:00:00 之前创建的所有二进制日志将被删除。

2.png

另外,我们也可以设置expire_logs_days参数,设置自动清理,其默认值为0,表示不启用过期自动删除功能。

show variables like 'expire_logs_days';
登录后复制

3.png

如果启用了自动清理功能,表示超出此天数的二进制日志文件将被自动删除,自动删除工作通常发生在MySQL启动时或FLUSH日志时。

4.png

【相关推荐:mysql视频教程】

以上就是mysql怎么删除二进制日志的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是大意西牛为你收集整理的mysql怎么删除二进制日志的全部内容,希望文章能够帮你解决mysql怎么删除二进制日志所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(81)

评论列表共有 0 条评论

立即
投稿
返回
顶部