MySQL binlog\u过期\u日志\u秒不工作

MySQL binlog\u过期\u日志\u秒不工作,mysql,binary-log,Mysql,Binary Log,我使用SET GLOBAL binlog\u expire\u logs\u seconds=259200配置了数据库查询以清除超过3天的二进制日志。使用MySQL 8.0.22。这似乎没有任何效果。bin日志在/var/lib/mysq/dbname-bin.000xx文件下累积。执行 PURGE BINARY LOGS BEFORE '2020-.......' 工作正常,但我希望DB引擎自己清除这些日志,而不用自己调用它。否则,binlog会占用大部分磁盘空间。请建议。我也有同样的问题

我使用
SET GLOBAL binlog\u expire\u logs\u seconds=259200配置了数据库查询以清除超过3天的二进制日志。使用MySQL 8.0.22。这似乎没有任何效果。bin日志在/var/lib/mysq/dbname-bin.000xx文件下累积。执行

PURGE BINARY LOGS BEFORE '2020-.......' 
工作正常,但我希望DB引擎自己清除这些日志,而不用自己调用它。否则,binlog会占用大部分磁盘空间。请建议。

我也有同样的问题(但在Windows 10上),我编辑了位于c:/xampp/mysql/bin中的my.ini,并添加了以下内容:

binlog_expire_logs_seconds=60

这对您有用吗?

仅供参考,当BINLOG超过时间段时,不会立即对其进行修剪。当mysqld打开一个新的binlog文件时,它们会被删除,这可能是因为当前日志文件已填充到最大大小,也可能是在运行FLUSH日志时。所以这取决于binlog的填充速度。您可能会看到binlogs在几天内都不会过期,如果服务器仍在写入相同的binlog文件只是为了完整性,那么它必须位于“[mysqld]”部分下。在linux机器中,它必须位于相应目录中的*.cnf文件中。