武英斌-博客

Mysql 清空binlog 日志

发布时间:7年前热度: 1586 ℃评论数:

默认情况下mysql会一直保留mysql-bin文件,这样到一定时候,磁盘可能会被撑满,这时候是否可以删除这些文件呢,是否可以安全删除,是个问题。

首先要说明一下,这些文件都是mysql的日志文件,如果不做主从复制的话,基本上是没用的,虽然没用,但是不建议使用rm命令删除,这样有可能会不安全,正确的方法是通过mysql的命令去删除。


hei.png

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

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

log-bin=mysql-bin

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

expire_logs_days = 7

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

MySQL -- 关闭 binlog

LNMP一键安装包安装的MySQL默认是开启了日志文件的,如果数据操作比较频繁就会产生大量的日志,在/usr/local/mysql /var/下面产生mysql-bin.0000* 类似的文件,而且一般都在几十MB到几个GB,更甚会吃掉整个硬盘空间,从来导致mysql无法启动或报错,如vps论坛用户的反馈。
 
如何关闭MySQL的日志功能:
 
删除日志:
 
执行:/usr/local/mysql/bin/mysql -u root -p
 
输入密码登录后再执行:reset master;
 
修改/etc/my.cnf 文件,找到
 
log-bin=mysql-bin
binlog_format=mixed
 
再这两行前面加上#,将其注释掉,再执行/etc/init.d/mysql restart即可。
 
本文以LNMP一件安装包安装的环境为例 除MySQL重启命令和配置文件路径可能略有不同,其他一样。

Mysql 清空binlog 日志

手机扫码访问