解决mysql8binlog文件导致/dev/mapper/cl-root 100%满了

1.查看占用空间大于1个G的文件

find ./ -type f -size +1G

2.找到binlog文件目录为/var/lib/mysql

cd /var/lib/mysql

3.删除binlog文件

    不能直接rm删除,使用mysql文件的PURGE命令

查看binlog日志文件大小,单位bytes
show binary logs;

删除binlog日志文件,删除旧的即可,不要全删。
使用PURGE,根据自己需求改写下面命令
//删除1天前的binlog日志文件
PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY);
//将指定时间之前的binlog清掉
PURGE BINARY LOGS BEFORE '2020-11-25 13:09:51';
//将bin.000088之前的binlog清掉:
PURGE BINARY LOGS TO 'bin.000088';

设置binlog的过期时间 
(5-1)mysql 8.0版本
binlog失效日期参数为 binlog_expire_logs_seconds,
默认2592000(30天)过期,可以设置 604800(7天)
(5-2)mysql 5.7版本
expire_logs_days 默认值为0,表示从不删除。  

//显示binlog的过期时间
show variables like '%expire%';
//设置过期时间为1天
set global binlog_expire_logs_seconds=60*60*24;
//手动刷新日志
flush logs;
或
flush binary logs;


 

你可能感兴趣的:(linux,服务器,运维)