返回顶部
首页 > 资讯 > 数据库 >mysql binlog日志自动清理及手动删除
  • 772
分享到

mysql binlog日志自动清理及手动删除

mysqlbinlog自动清理mysqlbinlog手动删除 2023-01-13 11:01:10 772人浏览 薄情痞子
摘要

当开启Mysql数据库主从时,会产生大量如mysql-bin.00000* log的文件,这会大量耗费您的硬盘空间。 mysql-bin.000001mysql-bin.000002mysql-bin.000003mys

当开启Mysql数据库主从时,会产生大量如mysql-bin.00000* log的文件,这会大量耗费您的硬盘空间。

mysql-bin.000001
mysql-bin.000002
mysql-bin.000003
mysql-bin.000004
mysql-bin.000005

有三种解决方法:1.关闭mysql主从,关闭binlog;2.开启mysql主从,设置expire_logs_days;3.手动清除binlog文件,> PURGE MASTER LOGS TO ‘MySQL-bin.010′;

实现:

1.关闭mysql主从,关闭binlog

# vim /etc/my.cnf  //注释掉log-bin,binlog_fORMat
# Replication Master Server (default)
# binary logging is required for replication
# log-bin=mysql-bin
# binary logging format - mixed recommended
# binlog_format=mixed

然后重启数据库

2.重启mysql,开启mysql主从,设置expire_logs_days

# vim /etc/my.cnf  //修改expire_logs_days,x是自动删除的天数,一般将x设置为短点,如10
expire_logs_days = x  //二进制日志自动删除的天数。默认值为0,表示“没有自动删除”

此方法需要重启mysql,附录有关于expire_logs_days的英文说明

当然也可以不重启mysql,开启mysql主从,直接在mysql里设置expire_logs_days

> show binary logs;
> show variables like '%log%';
> set global expire_logs_days = 10;

3.手动清除binlog文件

# /usr/local/mysql/bin/mysql -u root -p
> PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 10 DAY);   //删除10天前的MySQL binlog日志,附录2有关于PURGE MASTER LOGS手动删除用法及示例
> show master logs;

也可以重置master,删除所有binlog文件:

# /usr/local/mysql/bin/mysql -u root -p
> reset master;  //附录3有清除binlog时,对从mysql的影响说明

到此这篇关于mysql binlog日志自动清理及手动删除的文章就介绍到这了,更多相关mysql binlog自动清理及手动删除内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: mysql binlog日志自动清理及手动删除

本文链接: https://lsjlt.com/news/177606.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作