首页 > 编程知识 正文

mysql自动定期清理日志文件(mysql 日志清理)

时间:2023-11-29 19:40:50 阅读:310482 作者:RXUB

本文目录一览:

  • 1、一台服务器怎么清理mysql 日志
  • 2、怎么样安全删除mysql下的binlog日志
  • 3、MySQL清理binlog日志的方法
  • 4、mysql自动定期清理日志文件

一台服务器怎么清理mysql 日志

用命令查看: show binary logs;

然后去从服务器上查看哪个二进制正在使用,

我们看到mysql-tb-bin.000005这个日志文件正在使用。

回到主服务器开始清理日志,但是不能清理mysql-tb-bin.000005这个日志文件,用命令清理:

purge binary logs to 'mysql-tb-bin.000005';

这个命令就是清理除mysql-tb-bin.000005以外的其他二进制日志;执行成功后,再查看二进制日志列表:show binary logs;

清理成功,但是这样手动清理危险很大,而且还比较复杂,有没有自动清理的方法呢?答案是有的,在my.ini里面加上这个配置:expire_logs_days=5 这个配置的意思就是,日志的过期天数,超过5天的日志,mysql会自动清理5天以前的日志,这样就不用再担心日志文件文件越来越大的问题了,执行命令的时候一定要慎重,确保万无一失再执行,有不正确的地方,望大家指正!

怎么样安全删除mysql下的binlog日志

binlog日志可以自动清除也可以手动删除。 1、设置自动清理MySQL binlog日志,配置my.cnf: expire_logs_days =10 保存后重启mysql生效,以后binlog日志只保留10天以内的。

MySQL清理binlog日志的方法

永久生效:修改mysql的配置文件my.cnf,添加binlog过期时间的配置项: expire_logs_days=30 ,然后重启mysql,这个有个致命的缺点就是需要重启mysql。

临时生效:进入mysql,用以下命令设置全局的参数: set global expire_logs_days=30 ;

(上面的数字30是保留30天的意思。)

可以直接删除 binlog 文件,但是可以通过 mysql 提供的工具来删除更安全,因为 purge 会更新 mysql-bin.index 中的条目,而直接删除的话, mysql-bin.index 文件不会更新。 mysql-bin.index 的作用是加快查找 binlog 文件的速度。

命令查看 binlog 文件

删除举例:

mysql自动定期清理日志文件

方法一: 修改配置文件

重启mysql生效

方法二:修改mysql变量

该方法在下次启动mysql后失效,也就是说重启mysql后expire_logs_days的值又还原为0了,

该方法的好处在于不用重启mysql就可以生效

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。