当前位置:嗨网首页>书籍在线阅读

13-删除二进制日志

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

14.3.3 删除二进制日志

开启二进制日志会对数据库整体性能有所影响,但是性能的损失十分有限。根据MySQL官方手册中的测试表明,开启二进制日志会使性能下降1%。但考虑到可以使用复制(Replication)和point-in-time的恢复,这些性能的损失是可以被接受的。对于早期的二进制日志,在确认无用的情况下,为了节约磁盘空间,可以进行删除。下面将介绍几种删除二进制日志的方法。

用RESET MASTER命令删除所有日志,新日志重新从000001开始编号。

mysql> reset master; Query OK, 0 rows affected (0.18 sec) 用purge master logs to 'filename.**' 命令可以删除指定编号前的所有日志 mysql> purge master logs to 'binary_log.000003'; Query OK, 0 rows affected (0.04 sec) 执行完毕后通过SHOW命令查看二进制日志文件。 mysql> show binary logs; +-------------------+-----------+ |Log_name |File_size| +-------------------+-----------+ |binary_log.000003| 143| |binary_log.000004| 1024| |binary_log.000005| 168| |binary_log.000006| 120| |binary_log.000007| 143| |binary_log.000008| 143| |binary_log.000009| 120| +-------------------+-----------+ 7 rows in set (0.00 sec)

可以看出日志文件binary_log.000003之前的日志文件已经被删除。

用purge master logs to before 'YYYY-MM-DD HH24:MI:SS'命 令 可 以 删 除'YYYY-MM-DD HH24:MI:SS'之前的产生的所有日志。

mysql> purge master logs before '20150312'; Query OK, 0 rows affected (0.08 sec) mysql> show binary logs; +-------------------+-----------+ |Log_name |File_size| +-------------------+-----------+ |binary_log.000005| 168| |binary_log.000006| 120| |binary_log.000007| 143| |binary_log.000008| 143| |binary_log.000009| 120| +-------------------+-----------+ 5 rows in set (0.00 sec)