现在的位置: 首页 > 综合 > 正文

处理mysql的二进制日志文件mysql-bin

2014年02月28日 ⁄ 综合 ⁄ 共 623字 ⁄ 字号 评论关闭

mysql运行时间长了会有很多的mysql-bin.xxxx的文件,每个还挺大。

这个是mysql的二进制文件。里面记录了所有的mysql数据库操作,例如你的所有sql语句。

这个文件在数据库崩溃或者数据丢失的时候查错和恢复数据还是很有用的。

主从同步也可以根据这个日志来保证主从的数据一致。

但是任由它增长也不行,总有一天它会把磁盘占满的,所以要及时的处理。

处理方式如下:

单机情况下:

直接把二进制日志关了,在my.ini或者my.cnf里找到log-bin,把它注释掉就ok

如果你还是想保留一段时间的二进制日志,那就配置定期清理,

还是在my文件里配置expire_logs_days

比如:

     expire_logs_days=10


有主从服务器的情况下:

这个就要手动删除了,而且还要检查从服务器正在操作哪个日志,要不把未同步的数据的日志删除了那你就去哭吧。

方法如下:

1、在从服务器上运行SHOW SLAVE STATUS 查看从服务器正在读取哪个日志。;

2、在主服务器上运行SHOW
MASTER LOGS查看现在的日志列表;

3、删除从服务器正在读取的日志之前的所有日志

 
   PURGE MASTER LOGS TO '正在操作的日志名';
     PURGE MASTER LOGS BEFORE '时间';

 
   如:

 
   PURGE MASTER LOGS TO 'mysql-bin.099';
     PURGE MASTER LOGS BEFORE '2012-12-01 21:00:00';

抱歉!评论已关闭.