
# 设置RDS for MySQL本地Binlog日志清理
#### 操作场景
RDS for MySQL支持设置本地Binlog日志的清理，所有需要清理的本地日志都会在Binlog备份成功后删除，您可以根据需求灵活设置本地Binlog保留时长，合理利用实例使用空间。
除保留时长配置项外，还支持其他高级配置项（最大存储空间占用率、文件保留数、存储空间自治清理）。
#### 约束限制
- RDS默认开启Binlog，无需额外配置，binlog_format格式为row。
- 在RDS界面，仅支持在主实例中设置Binlog日志清理，只读实例的Binlog日志清理周期和主实例保持一致。
- 如果存在异常的只读或备节点，不会清理本地Binlog日志，防止清理后出现只读或备节点无法正常复制的情况。
- 清理Binlog日志时，即使设置保留时长为0，RDS也会保证主节点的Binlog同步到备节点、只读节点全部完成、并且备份成功到OBS以后才会执行清理。如果选择的保留时长大于0，例如设置1天，那么在Binlog同步及备份成功后，本地Binlog日志将会继续保留1天，到期后自动删除。如需查看Binlog日志，请参见[下载Binlog备份文件](https://support.huaweicloud.com/usermanual-rds-mysql/rds_03_0100.html)。
- 界面设置的Binlog保留时长以小时为单位，通过命令查看"expire_logs_days"（5.7版本参数）和"binlog_expire_logs_seconds"（8.0版本参数）过期时间单位为天，不建议作为参考依据。查看具体的Binlog过期时间时，以界面设置的为准。
 
#### 本地日志与日志备份区别
表1本地日志与日志备份区别 
| 对比项   | 本地Binlog日志                                                                                                                                                   | Binlog备份                                                                                                                                                                            |
|:---|:---|:---|
| 概述    | 用于自行搭建主从架构、数据订阅等。                                                                                                                                            | RDS系统自动每5分钟或一定数据量时对上一次全量备份或增量备份后更新的数据进行备份。通过Binlog备份，可以将实例数据恢复到指定时间点。                                                                                                               |
| 开启/关闭 | 默认开启，无法关闭，但默认保留时长为0，即Binlog备份成功后本地日志会被删除。 如需自定义时长保留本地日志，详见[操作步骤]。                       | 默认开启，无法关闭。                                                                                                                                                                          |
| 费用    | 不涉及费用。                                                                                                                                                       | 当已使用备份空间超过赠送空间后，超过的部分就会按使用量收取费用。具体收费规则请参见[RDS的备份是如何收费的](https://support.huaweicloud.com/rds-mysql_faq/rds_faq_0074.html)。                                                           |
| 存储空间  | 占用实例存储空间。 您可以在智能DBA助手页面查看Binlog日志占用的存储空间大小，请参见[管理磁盘容量](https://support.huaweicloud.com/usermanual-rds-mysql/rds_08_0028.html)。 | 不占用实例存储空间。 备份都是以压缩包的形式存储在对象存储服务上。备份文件上传OBS会占用备份空间。查询备份文件中的数据，请参见[下载Binlog备份文件](https://support.huaweicloud.com/usermanual-rds-mysql/rds_03_0100.html)。 |
   
 #### 操作步骤
1. [登录RDS管理控制台](https://console.huaweicloud.com/rds/#/rds/management/list)。
2. 单击管理控制台左上角的![](https://support.huaweicloud.com/usermanual-rds-mysql/zh-cn_image_0000002593882307.png)，选择区域。
3. 在"实例管理"页面，选择目标实例，单击实例名称，进入实例的"概览"页签。
4. 在左侧导航栏，单击"备份恢复"，在"Binlog备份"子页签下，单击"Binlog本地保留设置"。
5. 在弹出框中，配置相关参数后，单击"确定"。 
   图1Binlog本地保留设置   
   ![](https://support.huaweicloud.com/usermanual-rds-mysql/zh-cn_image_0000002465202032.png "点击放大")
   表2参数说明 
   | 参数           | 说明                                                                                                                             |
   |:---|:---|
   | 保留时长（小时）     | 范围为0\~7\*24小时。默认设置为0，表示Binlog备份成功后本地日志会被删除。                                                                                    |
   | 最大存储空间占用率（%） | 存储空间占用率=本地日志（Binlog）文件大小/实例总存储空间大小。 范围为0\~50。超出设定的占用率后，系统会自动开始清理最早的本地日志（Binlog）文件，直至空间占用率低于设定比例。 |
   | 文件保留数（个）     | 范围为6\~1000。范围为达到上限时自动清理最早的本地日志（Binlog）文件，直至文件数等于文件保留数。                                                                         |
   | 存储空间自治清理     | 当实例总存储空间占用率超过80%时，系统会自动开始清理最早的本地日志（Binlog）文件，直至总空间占用率低于80%。                                                                    |
      
   
   
 
#### 相关API
- [设置Binlog本地保留时长](https://support.huaweicloud.com/api-rds/rds_06_0101.html)
- [获取Binlog本地保留时长](https://support.huaweicloud.com/api-rds/rds_06_0102.html)
 
