最近发现服务器上的C盘空间越来越小,应该是最近一个月,于是开始查找原因,最后发现原来是因为上个月做了数据库的同步,打开了Mysql的二进制日志和.log日志,这些日志文件非常的庞大,.log日志已经达到了25个G,mysql-bin.00000X日志也达到了5个G,首先清理主服务器上的日志文件,我先清理二进制文件(mysql-bin.00000X),先查看有哪些文件:
用命令查看: show binary logs;


mysql 清理日志_第1张图片

然后去从服务器上查看哪个二进制正在使用,

mysql 清理日志_第2张图片

我们看到mysql-tb-bin.000005这个日志文件正在使用。
回到主服务器开始清理日志,但是不能清理mysql-tb-bin.000005这个日志文件,用命令清理:
purge binary logs to 'mysql-tb-bin.000005';
这个命令就是清理除mysql-tb-bin.000005以外的其他二进制日志;执行成功后,再查看二进制日志列表:show binary logs;

wKioL1iIR13w95egAAASPdL6kOA160.png-wh_50


清理成功,但是这样手动清理危险很大,而且还比较复杂,有没有自动清理的方法呢?答案是有的,在my.ini里面加上这个配置:expire_logs_days=5  这个配置的意思就是,日志的过期天数,超过5天的日志,mysql会自动清理5天以前的日志,这样就不用再担心日志文件文件越来越大的问题了,执行命令的时候一定要慎重,确保万无一失再执行,有不正确的地方,望大家指正!