为防止数据丢失或损坏,您可以使用自动备份或手动备份的方式来备份数据库。

备份简介

备份方式

云数据库 MySQL 单节点(云盘)、双节点(本地盘)、三节点(本地盘)支持 自动备份 手动备份 两种方式来备份数据库。

备份类型

云数据库 MySQL 双节点、三节点支持两种备份类型
物理备份 :物理数据全拷贝(自动备份与手动备份均支持)。
逻辑备份 :SQL 语句的备份(手动备份支持)。
说明
物理备份恢复方式需要用 xbstream 解包,详细操作请参见 使用物理备份恢复数据库
单个实例的表数量超过100万后,可能会造成备份失败,同时也会影响数据库监控,请合理规范表的数量,控制单个实例表数量不超过100万。
由于 Memory 引擎表的数据存储在内存中,因此无法对 Memory 引擎表进行物理备份,为避免丢失数据,建议将 Memory 引擎表转换成 InnoDB 表。
实例存在大量无主键表,可能会造成备份失败,同时会影响实例的高可用性,请及时对无主键的表创建主键或者二级索引。
物理备份的优势
逻辑备份的劣势
备份速度快。
支持流式备份和压缩。
备份成功率高。
恢复简单并且高效。
依赖备份进行的耦合操作,例如,增加 RO、增加灾备会变得更快。
物理备份完成的平均时长为逻辑备份的八分之一左右。
物理备份的导入速度比逻辑备份导入快十倍左右。
恢复时需要执行 SQL 和构建索引,恢复时间长。
备份速度慢,数据量大的情况下尤为明显。
备份过程中会对实例造成压力,可能会加大主从延迟。
有可能会丢失浮点数的精度信息。
由于各种问题(错误视图等),可能导致备份失败。
依赖备份进行的耦合操作,例如,增加 RO、增加灾备会变得缓慢。
云数据库 MySQL 单节点(云盘)支持快照备份 快照备份 :通过对存储层磁盘创建快照的方式进行备份(自动备份与手动备份均支持)。
快照备份的优势
快照备份的劣势
备份速度快。
相对占用体积小。
不支持下载。

备份对象

数据备份
日志备份
MySQL 双节点、三节点:
自动备份支持全量物理备份。
手动备份支持全量物理备份、全量逻辑备份和单库单表逻辑备份。
自动备份与手动备份均支持压缩和下载。
MySQL 单节点(云盘):
自动备份支持全量快照备份。
手动备份支持全量快照备份。
自动备份和手动备份均不支持下载。
数据库的 binlog 日志文件备份支持 MySQL 单节点(云盘)、双节点、三节点:
日志文件占用实例备份空间。
日志文件支持下载,但不支持压缩。
可设置日志文件保留时长。

注意事项

云数据库 MySQL 的自动备份于2019年02月26日起,仅支持物理备份。自动备份设置默认方式为物理备份,不再提供逻辑备份。存量自动备份为逻辑备份的实例会陆续被自动切换为物理备份。 此切换不会影响您业务访问,可能会影响您自动备份的使用习惯。若您需要逻辑备份,可以使用 云数据库 MySQL 控制台 中的手动备份方式或者通过 API 调用 来生成逻辑备份。
实例备份文件占用备份空间,请合理使用备份空间,超出免费额度的备份空间会进行收费,请参见 备份空间收费说明
建议选择业务低峰期进行备份。
为避免所需备份文件超出保留时间被删除,请及时下载所需的备份文件至本地。
备份期间禁止 DDL 操作,避免锁表导致备份失败。
单节点 MySQL 实例不支持数据库备份。

自动备份 MySQL 数据

设置自动备份

1. 登录 MySQL 控制台 ,在实例列表,单击 实例 ID 进入管理页面,选择 备份恢复 > 自动备份设置


2. 在弹出的备份设置对话框,选择各备份参数,单击 确定 。参数说明如下:
说明
回档功能 基于备份周期和备份保留天数内的数据备份 + 日志备份(binlog),缩短自动备份频率和保留天数会影响实例数据的回档时间范围,请您权衡备份配置。 例如,设置备份周期为周一、周四,保留天数为7天,则可以回档到7天内(数据备份和日志有效备份实际存储时长)的任意时刻。
自动备份无法手动删除,可设置备份保留时间,到期后会自动删除。
增加数据备份和日志备份保留的天数将可能带来额外的备份空间计费费用。
缩短日志备份保留的天数可能影响实例的数据回档周期。
自动备份设置中,数据备份的设置支持开启定期保留,未开启定期保留的设置叫常规备份设置,以下分别介绍 常规备份设置 开启定期备份设置 中的参数说明。

常规备份设置说明




参数
说明
备份开始时间
默认时间为系统自动分配的备份发起时间。
支持自定义选择备份开始的时间范围(如02:00-06:00),建议设置为业务低峰期。备份发起时间只是备份开始启动的时间,并不代表备份结束的时间。
例如,选择:02:00 - 06:00开启备份,系统会在02:00 - 06:00时间范围内的某一个时间点发起备份,具体的发起时间点取决于后端备份策略和备份系统状况。
数据备份保留时间
MySQL 双节点、三节点数据备份文件可以保留7天 - 1830天,默认为7天,到期后备份集自动删除。
MySQL 单节点(云盘)数据备份文件可以保留7天 - 30天,默认为7天,到期后备份集自动删除。
备份周期
配置规则:
按每周设置:默认选中星期一至星期日7天,支持自定义选择备份时间,但为了保障您的数据安全,请设置一周至少备份两次。
按每月设置:为了保障您的数据安全,一个月中,任意两个相邻的号数之间间隔不能超过2天,例如选择了1号备份,则下次备份日期不能跳过2、3、4号选择5号。
说明:
选择按每月设置时,为避免出现连续多日不备份的情况,不能跳过以下日期排列: 27/28/1(日)、28/29/1(日)、29/30/1(日)、28/1/2(日)、29/1/2(日)、30/1/2(日)。

备份落冷(可选)
勾选相应的数据备份落冷策略并指定天数:
指定标准存储天数:即设置数据备份文件生成多少天后,沉降为标准存储。
指定归档存储天数:即设置数据备份文件生成多少天后,沉降为归档存储。如需详细了解有关备份落冷的说明和策略,请参见 设置备份落冷 。其中,归档存储功能目前未开放,敬请期待。
日志备份保留时间
MySQL 双节点、三节点日志备份文件可以保留7天 - 1830天,默认为7天,到期后备份集自动删除。
MySQL 单节点(云盘)日志备份文件可以保留7天 - 30天,默认为7天,到期后备份集自动删除。
备份落冷(可选)
勾选相应的 binlog 备份落冷策略并指定天数:
指定标准存储天数:即设置 binlog 文件生成多少天后,沉降为标准存储。
指定归档存储天数:即设置 binlog 文件生成多少天后,沉降为归档存储。如需详细了解有关备份落冷的说明和策略,请参见 设置备份落冷 。其中,归档存储功能目前未开放,敬请期待。

开启定期备份设置说明

说明
单节点(云盘)实例暂不支持定期备份设置功能。
定期备份保留时间只能大于常规备份设置的保留时间。



参数
说明
备份开始时间
默认时间为系统自动分配的备份发起时间。
支持自定义选择备份开始的时间范围(如02:00-06:00),建议设置为业务低峰期。备份发起时间只是备份开始启动的时间,并不代表备份结束的时间。
例如,选择:02:00 - 06:00开启备份,系统会在02:00 - 06:00时间范围内的某一个时间点发起备份,具体的发起时间点取决于后端备份策略和备份系统状况。
数据备份保留时间
MySQL 双节点、三节点数据备份文件可以保留7天 - 1830天,默认为7天,到期后备份集自动删除。
备份周期
配置规则:
按每周设置:默认选中星期一至星期日7天,支持自定义选择备份时间,但为了保障您的数据安全,请设置一周至少备份两次。
按每月设置:为了保障您的数据安全,一个月中,任意两个相邻的号数之间间隔不能超过2天,例如选择了1号备份,则下次备份日期不能跳过2、3、4号选择5号。
说明:
选择按每月设置时,为避免出现连续多日不备份的情况,不能跳过以下日期排列: 27/28/1(日)、28/29/1(日)、29/30/1(日)、28/1/2(日)、29/1/2(日)、30/1/2(日)。

定期备份保留时间
数据备份文件可以保留90天 - 3650天,默认为1080天,超过保留期限后备份集自动删除。
定期备份保留策略
支持按每月、每季度或者每年设置备份保留个数。
起始时间
执行定期保留备份开始的时间。
备份落冷(可选)
勾选相应的数据备份落冷策略并指定天数:
指定标准存储天数:即设置数据备份文件生成多少天后,沉降为标准存储。
指定归档存储天数:即设置数据备份文件生成多少天后,沉降为归档存储。如需详细了解有关备份落冷的说明和策略,请参见 设置备份落冷 。其中,归档存储功能目前未开放,敬请期待。
日志备份保留时间
日志备份文件可以保留7天 - 1830天,默认为7天,到期后备份集自动删除。
备份落冷(可选)
勾选相应的 binlog 备份落冷策略并指定天数:
指定标准存储天数:即设置 binlog 文件生成多少天后,沉降为标准存储。
指定归档存储天数:即设置 binlog 文件生成多少天后,沉降为归档存储。如需详细了解有关备份落冷的说明和策略,请参见 设置备份落冷 。其中,归档存储功能目前未开放,敬请期待。

查看保留计划

当您在备份设置中选择定期备份保留策略后,可单击 查看保留计划 进行预览。


蓝色日期表示常规备份的日期。
红色日期表示定期备份的日期。
可通过单击常规备份或者定期备份,隐藏对应日期颜色标注,便于预览。
备份计划预览暂时为未来1年的备份保留情况,仅作为参考。
演示一:备份周期为周一、周三、周五、周日。自2022年1月11日起,每月保留1个备份。 演示二:备份周期为周一、周三、周五。自2022年1月11日起,每季度保留3个备份。 演示三:仅显示定期备份。



手动备份 MySQL 数据

手动备份功能允许用户自助发起备份任务。
说明
MySQL 双节点、三节点实例手动备份支持全量物理备份、全量逻辑备份和单库单表逻辑备份。
MySQL 双节点、三节点实例手动备份可在备份列表手动删除,释放掉备份空间,避免空间浪费和占用,没有手动删除的前提下会一直保留至数据库实例下线。
MySQL 单节点(云盘)实例手动备份支持全量快照备份。
MySQL 单节点(云盘)实例手动备份不支持删除。
实例在执行每天的自动备份任务期间,无法发起手动备份。
MySQL 双节点、三节点实例操作步骤
1. 登录 MySQL 控制台 ,在实例列表,单击 实例 ID 进入管理页面,选择 备份恢复 > 手动备份
2. 在弹出的备份设置对话框,选择备份方式和对象,填写备注名,单击 确定


说明
如果是逻辑备份下的单库备份或单表备份,请在左侧 选择库表 里勾选要备份的数据库或数据表,将数据库或表加入右侧列表。若您还没有数据库,请先创建数据库或表。



MySQL 单节点(云盘)实例操作步骤
1. 登录 MySQL 控制台 ,在实例列表,单击 目标实例 ID 进入管理页面,选择 备份恢复 > 手动备份
2. 输入备注名,单击 确定



热点问题

1. 超出备份保留时间的备份还可以下载或还原吗?

到期后的备份集会自动删除,无法进行下载还原。
建议您根据需求合理设置备份保留时间,或在 MySQL 控制台 下载备份文件至本地(需注意单节点云盘实例备份文件暂不支持下载)。
您也可以在控制台通过手动备份实例数据,手动备份会一直保存。
说明
手动备份亦会占用备份空间,请合理使用备份空间,避免造成额外的费用。

2. 备份可以手动删除吗?

自动备份无法手动删除,可设置备份保留时间,到期后会自动删除。
双节点、三节点实例手动备份可在 MySQL 控制台 的备份列表手动删除,没有手动删除的前提下会一直保留,单节点云盘实例手动备份暂不支持删除。

3. 数据和日志备份是否可以关闭?

不可以关闭。但可以通过 MySQL 控制台 减少备份频率和删除不再使用的手动备份数据来降低备份空间的占用量(单节点云盘实例手动备份暂不支持删除)。

4. 如何减少备份空间开销?

删除不再使用的手动备份数据(手动备份可在 MySQL 控制台 的实例管理页 > 备份恢复页面进行删除,需注意,单节点云盘实例手动备份暂不支持删除)。
降低非核心业务的数据自动备份频率(可在控制台调整备份周期和备份保留时间,一周至少备份2次)。
说明
回档功能 基于备份周期和备份保留天数内的数据备份 + 日志备份(binlog),缩短自动备份频率和保留天数会影响实例数据的回档时间范围,请您权衡备份配置。
缩短非核心业务的数据备份和日志备份保存时间(备份保留时间为7天已经能满足大多数场景需要)。
设置备份落冷 ,自定义备份落冷策略,转换备份文件存储类型,降低存储成本。
业务场景
备份保留时间
核心业务
建议7天 - 3650天,建议开启定期备份,实现定期将备份进行长期保存
非核心、非数据类业务
建议7天
归档业务
建议数据备份保留时间设置为7天,根据实际业务需求手动备份数据,用完及时删除
测试业务
建议数据备份保留时间设置为7天,根据实际业务需求手动备份数据,用完及时删除