首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要将每个binlog文件保持在24小时内。

需要将每个binlog文件保持在24小时内。
EN

Database Administration用户
提问于 2022-12-30 14:34:03
回答 2查看 291关注 0票数 3

我们需要保留每个binlog文件(比如mysql-bin-changelog.025249mysql-bin-changelog.025250mysql-bin-changelog.025251.)将MYSQL RDS设置为至少24小时。

然而,我看到在10-12分钟之后,binlog文件正在被清除/删除。

下面是我的RDS参数组中的当前设置:

  1. binlog保留时间设置为24小时。
  2. max_binlog_size设置为134217728。
  3. binlog_expire_logs_seconds设置为2592000。

而且,我的MYSQL数据库被大量使用,并且有400+表。

请让我知道我需要改变的参数,以便每个回收站日志应保留24小时。

EN

回答 2

Database Administration用户

回答已采纳

发布于 2023-01-02 16:28:04

Amazon不允许您像通常在给定的独立服务器或VM上那样操作二进制日志。

您需要运行两个存储过程。

若要模拟将expire_logs_days设置为7天,请调用以下命令:

代码语言:javascript
复制
mysql> CALL mysql.rds_set_configuration('binlog retention hours', 168);

在您的例子中,调用它将其设置为1天:

代码语言:javascript
复制
mysql> CALL mysql.rds_set_configuration('binlog retention hours',24);

在设置它之前和之后,运行以下命令来查看set值:

代码语言:javascript
复制
mysql> CALL mysql.rds_show_configuration;

我之前提到过这一点(Sep 05, 2018在AWS上启用二进制日志 )

票数 1
EN

Database Administration用户

发布于 2022-12-30 17:11:09

代码语言:javascript
复制
binlog_expire_logs_seconds = 86400

expire_log_days = 1

把他们俩都改变不会有什么坏处。后者是“旧”设置;前者(秒)是新设置。就好像他们想从一个改变到另一个,但还没有强迫改变。

然而,要注意的是,清除不会在那个时候发生,它将“保证”至少24小时。

看起来现在的设置是3天。

max_binlog_size = 128M给出了它什么时候会考虑清洗的线索。如果要花一周的时间才能填满那么多,它就不会像以前那么频繁地清理了。你可以降低它(如果亚马逊允许的话)。这一规模似乎对任何事情都没有多大影响。(旧的违约为1G;当这种情况发生变化时,我没有看到任何实质性的变化。)

票数 2
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/321573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档