1panel面板mysql8设置binlog周期

今天登陆服务器1panel面板的时候发现硬盘容量暴涨

我的系统是Debian

用命令查询了一下最近 7 天,按大小从大到小的文件

find / -type f -mtime -7 -exec du -sh {} \; 2>/dev/null | sort -hr | head -30

发现/opt/1panel/apps/mysql/mysql/data/里面一堆的binlog日志

找了一下资料发现mysql8会默认开启binlog

我这里默认的是自动保留 30 天后才删除

以下是调整方案,调整为保留3天自动删除

面板-数据库-终端

终端里面可以先查询一下当前的日志清理设置

SHOW VARIABLES LIKE 'binlog_expire_logs_seconds';

设置保留3天时间

SET GLOBAL binlog_expire_logs_seconds = 259200;

设置保存设置,重启也有效

SET PERSIST binlog_expire_logs_seconds = 259200;

可以删除多余的日志,比如保留到 binlog.000010,删除更早的文件

PURGE BINARY LOGS TO 'binlog.000010';

打完收工~~~