一、设置日志保留时长expire_logs_days自动删除 #查看当前日志保存天数: show variables like ‘%expire_logs_days%’; #这个默认是0,也就是logs不过期,可通过设置全局的参数,使他临时生效: set global expire_logs_days=7; #设置了只保留7天BINLOG, 下次重启mysql这个参数默认会失败,所以需在my.cnf中设置 exp...
使用set global expire_logs_days=X命令设置的值只会在当前会话中生效,直到服务器重新启动,如果需要永久生效,必须修改配置文件并重启服务。 3、版本差异: 在MySQL 8.0及更高版本中,expire_logs_days已被废弃,取而代之的是binlog_expire_logs_seconds,如果使用的是MySQL 8.0以上版本,应确保使用正确的参数。 4、触...
1.自动删除 永久生效:修改mysql的配置文件my.cnf,添加binlog过期时间的配置项:expire_logs_days=30,然后重启mysql,这个有个致命的缺点就是需要重启mysql。 临时生效:进入mysql,用以下命令设置全局的参数:set global expire_logs_days=30; (上面的数字30是保留30天的意思。) 2.手动删除 可以直接删除binlog文件,但...
要设置expire_logs_days参数的数值,可以通过以下步骤: 连接到MySQL数据库服务器。 运行以下命令来查看当前expire_logs_days参数的值: SHOW VARIABLES LIKE 'expire_logs_days'; 复制代码 如果需要修改expire_logs_days参数的值,可以运行以下命令: SET GLOBAL expire_logs_days = <desired_value>; 复制代码 其中<des...
1 row in set (0.00 sec) mysql> set global expire_logs_days=0.5; ERROR 1232 (42000): Incorrect argument type to variable 'expire_logs_days' 说明:参数不支持浮点数,只支持正整数。 PS:MySQL默认expire_logs_days=0,是不会自动删除日志文件的。如果日志文件过大,且业务需要,只能手动归档压缩备份。
set global expire_logs_days = 7; set global max_binlog_size = 524288000; 1)查看日志文件过期时间 show variables like 'expire_logs_days'; 效果如下: 2)查看日志文件大小设置 show variables like 'max_binlog_size'; 效果如下: 方式2、修改配置文件 ...
mysql> set global expire_logs_days=7; Query OK, 0 rows affected (0.00 sec) 设置之后不会立即清除,触发条件是: binlog大小超过max_binlog_size 手动执行flush logs 重新启动时(MySQL将会new一个新文件用于记录binlog) 我们执行flush logs; mysql> flush logs; ...
设置binlog文件的保留期: 通过设置expire_logs_days参数,可以控制binlog文件的保留天数。过期的binlog文件将在每次二进制日志刷新或MySQL服务器启动时被自动删除。 代码语言:javascript 复制 SETGLOBALexpire_logs_days=7;--设置binlog文件的保留天数为7天
mysql> set global expire_logs_days = 10; 设置完后,可以通过 show variables like '%log%'; 看到expire_logs_days的值已被修改成10。 注意:通过这种方式设置expire_logs_days虽然不需要重启mysql即可生效,但是该方式在重启mysql之后,值会被恢复。
expire_logs_days = x //二进制日志自动删除的天数。默认值为0,表示“没有自动删除” 此方法需要重启mysql 当然也可以不重启mysql,开启mysql主从,直接在mysql里设置expire_logs_days > show binary logs; > show variables like '%log%'; > set global expire_logs_days = 10; ...