MySQL清理binlog日志的方法

MySQL清理binlog日志的方法,第1张

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

临时生效:进入mysql,用以下命令设置全局的参数: set global expire_logs_days=30

(上面的数字30是保留30天的意思。)

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

命令查看 binlog 文件

删除举例:

binlog日志可以自动清除也可以手动删除。 1、设置自动清理MySQL binlog日志,配置my.cnf: expire_logs_days =10 保存后重启mysql生效,以后binlog日志只保留10天以内的。

您好,很高兴为您解答。

通过mysql的命令去删除

mysql -u root -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with  or \g.

Your MySQL connection id is 2819416

Server version: 5.5.24-0ubuntu0.12.04.1-log (Ubuntu)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help' or '\h' for help. Type '\c' to clear the current input statement.

mysql> reset master

Query OK, 0 rows affected (3 min 37.65 sec)

其实关键的命令就是reset master这个命令会清空mysql-bin文件。

另外如果你的mysql服务器不需要做主从复制的话,建议通过修改my.cnf文件,来设置不生成这些文件,只要删除my.cnf中的下面一行就可以了。

log-bin=mysql-bin

如果你需要复制,最好控制一下这些日志文件保留的天数,可以通过下面的配置设定日志文件保留的天数:

expire_logs_days = 7

表示保留7天的日志,这样老日志会自动被清理掉。

如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】

希望我的回答对您有所帮助,望采纳!

                                                                                                                            ~ O(∩_∩)O~


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/63337.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-28
下一篇2023-02-28

发表评论

登录后才能评论

评论列表(0条)

    保存