我们需要保留每个binlog文件(比如mysql-bin-changelog.025249、mysql-bin-changelog.025250、mysql-bin-changelog.025251.)将MYSQL RDS设置为至少24小时。
然而,我看到在10-12分钟之后,binlog文件正在被清除/删除。
下面是我的RDS参数组中的当前设置:
binlog保留时间设置为24小时。max_binlog_size设置为134217728。binlog_expire_logs_seconds设置为2592000。而且,我的MYSQL数据库被大量使用,并且有400+表。
请让我知道我需要改变的参数,以便每个回收站日志应保留24小时。
发布于 2023-01-02 16:28:04
Amazon不允许您像通常在给定的独立服务器或VM上那样操作二进制日志。
您需要运行两个存储过程。
若要模拟将expire_logs_days设置为7天,请调用以下命令:
mysql> CALL mysql.rds_set_configuration('binlog retention hours', 168);在您的例子中,调用它将其设置为1天:
mysql> CALL mysql.rds_set_configuration('binlog retention hours',24);在设置它之前和之后,运行以下命令来查看set值:
mysql> CALL mysql.rds_show_configuration;我之前提到过这一点(Sep 05, 2018:在AWS上启用二进制日志 )
发布于 2022-12-30 17:11:09
binlog_expire_logs_seconds = 86400
expire_log_days = 1把他们俩都改变不会有什么坏处。后者是“旧”设置;前者(秒)是新设置。就好像他们想从一个改变到另一个,但还没有强迫改变。
然而,要注意的是,清除不会在那个时候发生,它将“保证”至少24小时。
看起来现在的设置是3天。
max_binlog_size = 128M给出了它什么时候会考虑清洗的线索。如果要花一周的时间才能填满那么多,它就不会像以前那么频繁地清理了。你可以降低它(如果亚马逊允许的话)。这一规模似乎对任何事情都没有多大影响。(旧的违约为1G;当这种情况发生变化时,我没有看到任何实质性的变化。)
https://dba.stackexchange.com/questions/321573
复制相似问题