本篇内容主要讲解“怎么管理mysql二进制日志”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么管理mysql二进制日志”吧!

使用参数自动清除二进制日志
默认情况下,MySQL不会移除旧的不运行的二进制日志,expire_logs_days参数可以自动移除二进制日志,该参数默认值是0,意味着
不会自动移除二进制日志。给该参数赋大于0的值将会移除那些大于这个值的日志,以天为单位。

手动清除二进制日志
清除特定文件

点击(此处)折叠或打开

mysql> purge binary logs to 'mysql-bin-3306.000005';

Query OK, 0 rows affected (0.08 sec)

清除特定日志或时间

点击(此处)折叠或打开

mysql> purge binary logs before '2017-09-25 12:30:00';

Query OK, 0 rows affected (0.01 sec)

物理删除二进制日志
rm -rf mysql-bin-3306.000005

点击(此处)折叠或打开

mysql> show master logs;

+-----------------------+-----------+

| Log_name | File_size|

+-----------------------+-----------+

| mysql-bin-3306.000005 | 0 |

| mysql-bin-3306.000006 | 604 |

| mysql-bin-3306.000007 | 891 |

| mysql-bin-3306.000008 | 346 |

| mysql-bin-3306.000009 | 35946018 |

+-----------------------+-----------+

如果一个二进制日志被从文件系统直接删除,及时这个文件已经不在文件系统中,MySQL会在一个带有0字节的文件中显示一个指针。后续再次使用purge命令删除二进制日志时候,会有以下提示:

点击(此处)折叠或打开

mysql> purge binary logs to 'mysql-bin-3306.000006';

Query OK, 0 rows affected, 1 warning (0.02 sec)


mysql> show warings \G

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'warings' at line 1

mysql> show master logs;

+-----------------------+-----------+

| Log_name | File_size |

+-----------------------+-----------+

| mysql-bin-3306.000006 | 604 |

| mysql-bin-3306.000007 | 891 |

| mysql-bin-3306.000008 | 346 |

| mysql-bin-3306.000009 | 35946018 |

+-----------------------+-----------+

4 rows in set (0.00 sec)

到此,相信大家对“怎么管理mysql二进制日志”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!