当前位置:爱推吧 » php教程 » mysql关闭与删除bin-log日志详解

mysql关闭与删除bin-log日志详解

mysql中如果我们开启bin-log日志全在mysql目录发现大量的mysql-bin.000001,mysql-bin.000002等这些文章,如果多了会发现占很大的空间,下面我来介绍mysql-bin日志关闭与删除方法。

关闭bin-log日志

当开启bin-log日志时,会生成很多mysql-bin.0000*类似的文件,而且可能会占用很大的硬盘空间。对于自己的测试机器或硬盘比较紧张的vps,而又不需要做master,slave的配置,完全可以关闭日志功能。

关闭操作很简单,找到配置文件my.cnf,对于linux,一般默认在/etc目录下,打开此文件,使用井号(#)注释掉如下两个配置项目即可,代码如下:

log-bin=mysql-bin
binlog_format=mixed

配置修改好后需要重启mysqld服务才能生效。

可能在重启时候会收到一个错误,“ERROR 1186 (HY000): Binlog closed, cannot RESET MASTER”,解决办法是先登入到mysql命令行中执行 reset master 即可。reset master的用途就是删除先前所以的bin-log日志文件。所以在master、slave配置环境中慎用此命令。

删除bin-log日志
查找当前有哪些二进制日志文件:

mysql> show binary logs;
+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000001 | 1357315 | 
| mysql-bin.000002 | 117 | 
| mysql-bin.000003 | 404002 | 
| mysql-bin.000004 | 2050722 | 
| mysql-bin.000005 | 139103 | 
| mysql-bin.000006 | 46702 | 
| mysql-bin.000007 | 117 | 
| mysql-bin.000008 | 98 | 
| mysql-bin.000009 | 117 | 
| mysql-bin.000010 | 1254 | 
| mysql-bin.000011 | 117 | 
| mysql-bin.000012 | 29394942 | 
| mysql-bin.000013 | 422100 | 
| mysql-bin.000014 | 117 | 
| mysql-bin.000015 | 117 | 
| mysql-bin.000016 | 98 | 
| mysql-bin.000017 | 117 | 
| mysql-bin.000018 | 117 | 
| mysql-bin.000019 | 285300 | 
| mysql-bin.000020 | 181229 | 
| mysql-bin.000021 | 98 | 
+------------------+-----------+
21 rows in set (0.03 sec)

删除bin-log(删除mysql-bin.000018之前的所有二进制日志文件)

mysql> purge binary logs to 'mysql-bin.000018';
Query OK, 0 rows affected (0.08 sec)
mysql> show binary logs;
+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000018 | 117 |
| mysql-bin.000019 | 285300 |
| mysql-bin.000020 | 181229 |
| mysql-bin.000021 | 98 |
+------------------+-----------+
4 rows in set (0.00 sec)

mysql> show binlog events;
+------------------+-----+-------------+-----------+-------------+---------------------------------------+
| Log_name | Pos | Event_type | Server_id | End_log_pos | Info |
+------------------+-----+-------------+-----------+-------------+---------------------------------------+
| mysql-bin.000018 | 4 | Format_desc | 1 | 98 | Server ver: 5.0.45-log, Binlog ver: 4 |
| mysql-bin.000018 | 98 | Stop | 1 | 117 | |
+------------------+-----+-------------+-----------+-------------+---------------------------------------+
2 rows in set (0.01 sec)

4 个吐槽 on “mysql关闭与删除bin-log日志详解”

发表评论

电子邮件地址不会被公开。 必填项已用*标注