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);

  • 相关阅读:
    Arrays工具类、二维数组
    Idea软件的使用
    循环语句
    方法
    objective-C 2.0
    Unix系统常用命令
    文献管理工具Zotero
    如何降低论文重复率
    SQL易忽视的细节
    数据库系统原理学习资源
  • 原文地址:https://www.cnblogs.com/connected/p/15071942.html
Copyright © 2011-2022 走看看