五好的Book

本站主要是研究linux操作系统-主要指ubuntu,debian系,php及html应用技术-包括css,javascript
中遇到的问题所做的杂碎记录,以便给自己及同样遇到类似问题的人做问题解决的参考

清理binlog日志记录

mysql 长期运行下会产生很多日志记录,尤其是binlog

root@www:/var/lib/mysql# du -h *
4.0K    auto.cnf
1.1G    binlog.000016
1.1G    binlog.000017
1.1G    binlog.000018
1.1G    binlog.000019
1.1G    binlog.000020
1.1G    binlog.000021
1.1G    binlog.000022
1.1G    binlog.000023
1.1G    binlog.000024
1.1G    binlog.000025
1.1G    binlog.000026
1.1G    binlog.000027
754M    binlog.000028
4.0K    binlog.000029
416M    binlog.000030
4.0K    binlog.index

以下方法来控制binlog的大小

1.限制 binlog 日志文件存在时间  设置参数 expire_logs_days = 3; 只保留 3 天的日志文件
2.在mysql的shell里执行 reset master; 清空所有 binlog 文件
3.对于没有做主从的情况,直接在配置文件中注释log-bin=mysql-bin这个配置项
4.有主从配置的情况可以这样来操作
show slave status\G # 你首先要来 slave 上查看从库读 binlog 到了哪里 
Master_Log_File: mysql-bin.000007 # 我们可以看到是 mysql-bin.000007

mysql> purge master logs to 'mysql-bin.000007'; # 我们可以在 master 中执行这条指令 , 将 binlog 文件删除至 mysql-bin.000007 前

mysql> purge master logs before '2018-11-16 00:00:00'; # 将 binlog 文件删除至此日期前
本原创文章未经允许不得转载 | 当前页面:五好的Book » 清理binlog日志记录

评论