zoukankan      html  css  js  c++  java
  • mysql的binlog太多太大占用大量磁盘空间的解决方法

    设置日志保留时长expire_logs_days自动删除

    查看当前日志保存天数:

    mysql> show variables like '%expire_logs_days%';

    默认是0,也就是logs不过期.
    如果数据库此时不便重启,可以设置全局的参数,使他临时生效:
    mysql> set global expire_logs_days=7;
    设置了只保留7天BINLOG, 下次重启mysql这个参数默认会失败

    如果要永久生效,需要在my.cnf中设置
    vi /etc/my.cnf
    追加内容:
    expire_logs_days = 7

    也可以先手动删除BINLOG (purge binary logs)

    删除指定的日志
    mysql> PURGE {MASTER | BINARY} LOGS TO 'log_name'
    例:删除binlog.1000
    mysql> PURGE MASTER LOGS TO 'binlog.1000';

    或删除指定日期之前的日志索引中的所有二进制日志。
    mysql> PURGE {MASTER | BINARY} LOGS BEFORE 'date'
    例:删除2021-06-22 12:00:00前的文件

    mysql> PURGE MASTER LOGS BEFORE '2021-06-22 12:00:00';

    例:删除3天前的日志
    mysql> PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);

  • 相关阅读:
    计算机网络协议如何学习之换位思考
    tcp/ip协议
    JSP页面中的元素
    动态网页脚本语言
    php的学习经验
    jsp、php和asp之间的区别
    Reactor 线程模型
    Hadoop集群搭建
    hadoop单点配置
    Docker 安装脚本
  • 原文地址:https://www.cnblogs.com/connected/p/15071942.html
Copyright © 2011-2022 走看看