库表恢复模式的区别
库表恢复模式分为常规和极速两种级别。极速库表恢复通过性能型沙箱实例实现,在相同数据量的情况下,极速库表恢复比常规恢复快50%~95%。要使用极速库表恢复功能,您需要先开启该功能,再将开启后生成的备份集数据恢复到原实例/新实例中。
更多详情,请参见数据恢复方案概览(恢复速率对比)。
对比项
常规库表恢复
极速库表恢复
恢复范围
恢复实例中指定的库、表。
恢复实例中指定的库、表。
恢复位置
高性能本地盘:支持恢复到原实例和新实例。
云盘:仅支持恢复到原实例。
高性能本地盘:仅支持恢复到原实例。
云盘:不支持极速库表恢复功能。
恢复速度
与数据量有关,恢复速度较慢。
与数据量有关,在常规库表恢复功能的基础上,提升约50%~95%的恢复速度。
恢复方式
支持按备份集和时间点恢复。
免费版:支持恢复到最近一个全量备份的时间点。
付费版:支持按备份集和任意时间点恢复。
说明
开启日志备份后,可恢复到日志备份保留时长内的任意时间点。未开启日志备份,仅支持恢复至已有数据备份时间点。
恢复范围取决于日志备份和数据备份保留时长、开启库表恢复的时间点等,日志备份和数据备份保留时间最大可设置为730天。您可调用DescribeLocalAvailableRecoveryTime接口查询可恢复的时间范围。
前提条件
常规库表恢复
高性能本地盘
RDS MySQL实例需满足以下条件:
大版本:8.4、8.0、5.7或5.6
系列:高可用系列
存储类型:高性能本地盘
存储引擎:InnoDB
付费类型:按量付费、包年包月(不支持Serverless类型)
说明
您可以前往实例基本信息页面查看以上信息。
实例的表数量必须低于50000。
若您初次使用RDS备份服务,您需要使用阿里云主账号完成数据灾备服务关联角色(AliyunServiceRoleForDBS)授权。
请确保实例库表恢复功能处于开启状态。
您可前往实例详情页的备份恢复页面,在备份策略页面下,查看库表恢复功能的状态。如未开启,请将库表恢复设置为开启。
重要
开启库表恢复后,备份格式会修改(从tar压缩包变成xbstream文件包),用于支持库表恢复。
新实例的库表恢复功能默认开启,该功能开启后不支持关闭。
开启库表恢复功能前产生的备份集,无法用于库表恢复。您需要在开启库表恢复功能后,先手动进行一次全量备份,再选择库表恢复功能开启后产生的备份集进行库表恢复。
必要时,您也可参考恢复全量数据操作进行恢复。
云盘
RDS MySQL实例需满足以下条件:
大版本:8.4、8.0、5.7
系列:高可用系列、基础系列、集群系列
存储类型:SSD云盘、ESSD云盘、高性能云盘
存储引擎:InnoDB
付费类型:按量付费、包年包月(不支持Serverless类型)
说明
您可以前往实例基本信息页面查看以上信息。
若您初次使用RDS备份服务,您需要使用阿里云主账号完成数据灾备服务关联角色(AliyunServiceRoleForDBS)授权。
请确保实例库表恢复功能处于开启状态。
新实例(2023年12月01日及之后创建的实例):库表恢复功能默认开启,不支持关闭。
旧实例(2023年12月01日前创建的实例):系统将强制关闭实例已开启的库表恢复功能。您可前往实例详情页的备份恢复页面,在备份策略页签下重新开启库表恢复功能。开启后实例现有的有效备份集可以立即用于库表恢复。该功能开启后,不再支持关闭。
重要
如果已有备份集无效,无法用于库表恢复时,您可在库表恢复功能开启后,手动进行一次全量备份,再选择库表恢复功能开启后产生的备份集进行库表恢复。
极速库表恢复
RDS实例需满足以下条件:
大版本:8.4、8.0、5.7或5.6
系列:高可用系列
存储类型:高性能本地盘(云盘不支持极速库表恢复功能)
存储引擎:InnoDB
付费类型:按量付费、包年包月(不支持Serverless类型)
实例所在地域:华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华南1(深圳)
说明
您可以前往实例基本信息页查看以上信息。
若您初次使用RDS备份服务,您需要使用阿里云主账号完成数据灾备服务关联角色(AliyunServiceRoleForDBS)授权。
实例未开启容量型沙箱实例,如已开启,请先关闭。
说明
如果已经开启容量型沙箱,又开启极速库表,会导致沙箱升级到性能型沙箱,造成应急恢复费用增加。
请确保实例极速库表恢复功能处于开启状态。
您可前往实例详情页的备份恢复页面,在备份策略页面下,查看极速库表恢复功能的状态。如未开启,请将极速库表恢复设置为开启。具体操作,请参见1. 开启极速库表恢复。
重要
开启极速库表恢复功能前产生的备份集,无法用于极速级别的库表恢复。您需要在开启极速库表恢复功能后,先手动进行一次全量备份,再选择开启极速库表恢复功能后产生的备份集进行库表恢复。
必要时,您也可参考恢复全量数据操作进行恢复。
注意事项
功能默认开启:
新实例的库表恢复功能(常规级别)默认开启,且无法关闭。
恢复任务发起后不支持暂停或取消。
日志备份要求:
按时间点恢复数据时,需确保实例的日志备份处于开启状态。未开启日志备份的实例会导致极速库表恢复失败。
主备切换与服务中断:
高性能本地盘实例:
恢复到原实例会进行主备切换,可能导致RDS服务不可用约30~120秒,需确保应用具备自动重连机制。
恢复到新实例不会触发主备切换。
云盘实例:
恢复到原实例不会触发主备切换,但可能影响原实例性能,甚至引发实例切换。
恢复完成后会产生一个全量备份。
使用限制
库表恢复限制(常规/极速):
仅支持恢复存储引擎为InnoDB的库表数据,不支持恢复X-Engine库表数据。
不支持恢复分区表,以及视图、存储过程等数据库对象,但您可通过全量数据恢复功能实现。
如果恢复过程中的binlog日志包含对指定表进行重命名(rename)操作,或者该表中存在生成列(generated column),则库表恢复功能将无法对该表进行恢复。
如果恢复过程中的binlog日志包含XA事务,则库表恢复任务会失败。
约束恢复说明:库表级恢复支持恢复主键(PRIMARY KEY)、唯一索引(UNIQUE KEY)和普通索引(INDEX/KEY)。不支持恢复外键约束(FOREIGN KEY)、触发器(TRIGGER)和全文索引(FULLTEXT INDEX)。
重要
恢复过程中会自动移除外键约束,以确保恢复成功率。如需外键约束,请在恢复完成后手动重建。
表数量限制:
库表恢复功能要求实例的表数量不超过5万张,否则恢复任务会失败。
恢复的数据量过大、库表过多或用户指定时间点内的binlog数量过多,可能导致恢复时间显著延长。
极速库表恢复限制:
高性能本地盘实例:仅支持恢复到原实例,不支持恢复到新实例。
极速库表恢复使用限制:不支持带有只读节点的实例、采用透明数据加密TDE的实例、未开启日志备份的实例。
费用说明
常规库表恢复
高性能本地盘
高性能本地盘实例默认开启常规库表恢复功能,不收费。若恢复到新实例,需支付新实例费用,费用详情可在创建实例时查看。
说明
如临时使用,您可以创建按量付费的新实例,把数据迁移到原实例,然后释放新实例。
实例创建完成后开始计费。
高性能本地盘实例不支持Serverless功能。
云盘
自2023年12月01日起,云盘实例开启库表恢复功能后,备份架构将会升级,备份量会增加30%~80%。备份总大小未超免费额度不收费,超出部分将根据实际使用量额外计费。
极速库表恢复
高性能本地盘实例的极速库表恢复功能分免费版和付费版,云盘实例不支持。
免费版:不收费,支持按备份集或最近一个全量时间点恢复。
付费版:按量付费,0.0336元/GB/天,支持按备份集和任意时间点恢复。
1. 开启极速库表恢复
若您需要使用极速库表恢复,需先参考如下步骤开启该功能,再将开启后生成的备份集用于库表恢复,该功能仅适用于符合前提条件的高性能本地盘实例,开启操作对业务无影响。
说明
若仅使用常规库表恢复,请忽略本模块操作,执行2. 恢复库表到原实例/新实例即可。
访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏,单击备份恢复。
说明
页面如果出现极速库表恢复商业化收费的弹窗,您可在勾选已知,不再提示后按需选择开启免费版或付费版。如未跳出该弹窗,请继续执行以下步骤。
在备份恢复页面中选择备份策略页签。
单击基础备份区域后的编辑,将极速库表恢复设置为开启。
设置CDM付费类型和CDM保留时长。极速库表恢复支持免费版和付费版两个版本:
免费版:仅支持按备份集恢复。选择CDM付费类型为最近1个全量时间点(免费版),恢复后的数据保留时长固定为1天。
付费版:支持按备份集或按时间点恢复(需提前开启日志备份)。选择CDM付费类型为任意时间点(付费版),恢复后的数据保留时长可按需设置1~730天。
单击确定。
2. 恢复库表到原实例/新实例
重要
库表恢复不会覆盖或影响原库数据。恢复到原实例时,恢复的数据存储在新库中(默认在原库名后添加_backup后缀);恢复到新实例时,系统新建独立的RDS实例存储恢复数据。
访问RDS实例列表,在上方选择地域,然后单击目标实例ID。
在左侧导航栏单击备份恢复,然后单击库表恢复。
说明
控制台如未显示库表恢复按钮,请参见前提条件确认功能使用条件是否满足。
如果出现单击库表恢复按钮无响应的情况,请刷新浏览器缓存后,再次尝试。
恢复实例提示空间不足时,可先扩容存储空间,再进行恢复。
设置恢复的位置和方式。
参数
说明
恢复位置
恢复到原实例
恢复到新实例(仅高性能本地盘实例显示):系统会新建一个RDS实例,不影响原实例。
在新实例中验证数据后,您也可以把数据迁移回原实例。
恢复速度
常规
极速(仅支持恢复到原实例):极速库表恢复可提升约50%~95%的恢复速度,详见RDS MySQL应急恢复。
恢复方式
按备份集
按时间点(需开启日志备份):系统先恢复全量备份数据,再恢复增量日志备份数据,您可以选择时间点为日志备份保留时间内的任意时间点。如需查看或修改日志备份保留时间,请参见自动备份。
例如:RDS实例的数据备份和日志备份保留时长分别为7天,则最多可以恢复7天内的数据。7天前的备份集未保留,因此无法恢复。
说明
免费版极速库表恢复不支持按时间点恢复,仅支持按备份集恢复。
选择要恢复的库表,还可以设置恢复后的库名或表名,然后单击确定。
说明
每次最多选择50个库或者表。
恢复到原实例时,不会影响原实例数据,恢复后库名不能与原库名相同,但恢复后表名可以与原表名相同。系统默认会在恢复后库名后面添加_backup,您也可以修改。
如果恢复到原实例,请确认底部显示的已勾选的库和表的总大小,以及该实例剩余存储空间,确保剩余存储空间是否足够。
高性能本地盘实例如果进行常规库表恢复并恢复到新实例,需选择付费方式并设置新实例的参数。
包年包月:在新建实例时需要支付费用,适合长期需求。
按量付费:按小时扣费。适合短期需求,用完可立即释放实例。
参数名称
说明
可用区
可用区是地域中的一个独立物理区域,不同可用区之间没有实质性区别。
您可以选择将RDS实例与ECS实例创建在同一可用区或不同的可用区。
说明
新实例的地域与原实例相同,不支持修改。
规格
每种规格都有对应的CPU核数、内存、最大连接数和最大IOPS。
存储空间
该存储空间包括数据空间、系统文件空间、日志文件空间和事务文件空间。
网络类型
专有网络(默认)。VPC是一种隔离的网络环境,安全性和性能均高于经典网络。
您可以在任务列表中查看库表恢复进度或新实例的创建进度。
在RDS控制台发起恢复库表操作并选择恢复到原实例后,RDS MySQL实例的运行状态将显示为创建临时实例中。此状态表示库表恢复任务正在进行,期间不影响实例的正常使用(例如执行其他备份操作等)。该状态的持续时间与库表数据量成正比,数据量越大,所需时间越长。
重要
恢复任务一旦开始,无法暂停或中断。
恢复任务进行中时,请勿重复执行恢复操作,否则会提示“操作失败,该实例状态下不支持此操作。”请等待当前恢复任务完成后再执行下一次操作。
若主实例中存在只读实例,主实例恢复任务完成后,系统会自动将数据同步至所有关联的只读实例,确保主从数据的一致性。
连接到RDS MySQL实例后,可查看恢复到原实例或新实例后的数据。
说明
请确保连接实例所使用的账号具备数据库的查看或管理权限,建议使用高权限账号连接并查看。
如果使用DMS连接RDS MySQL实例,恢复库表后需右键单击实例并选择刷新同步字典,新库才会在列表中显示。
库表恢复到新实例后,如需迁移回原实例,可以使用DTS实现数据迁移。
相关操作
订正在线数据
恢复位置
订正在线数据方法
恢复到原实例
使用RENAME TABLE语句对恢复后的表进行重命名。
恢复到新实例
恢复到新实例后,您可使用数据传输DTS将需要的部分或全部库表数据迁移至原实例以订正原实例在线数据。
说明
创建数据迁移任务时,请将已恢复的新实例作为源库,将原实例作为目标库,接入方式均选择云实例。
关闭极速库表恢复
关闭急速库表恢复不影响常规级别库表恢复功能的使用。
访问实例详情页的备份恢复页面,在备份策略页签下,单击基础备份区域后的编辑按钮,将极速库表恢复设置为关闭。
变更极速库表恢复模式(节省费用)
您可以按需将极速库表恢复模式调整为免费版,以节省恢复费用。变更为免费版后,仅支持按备份集或最近一个全量时间点恢复,不能按任意时间点恢复。
访问实例详情页的备份恢复页面,在备份策略页签下,单击基础备份区域后的编辑按钮,将CDM付费类型设置为最近1个全量时间点(免费版)。
相关API
API
描述
RestoreTable
恢复RDS实例的某个数据库或表到原实例上。
CloneDBInstance
恢复RDS实例的某个数据库或表到新实例上。
DescribeLocalAvailableRecoveryTime
查询RDS实例备份可恢复的时间范围。
常见问题
库表恢复时,出现错误提示操作失败,该实例状态下不支持此操作。如何处理?
RDS控制台任务为串行运行,请等待上一个恢复任务或其他任务结束后,再执行下一个恢复任务操作。
库表恢复时选不了库和表,出现错误提示Meta information is too large.(错误码:InvalidMeta.TooLarge)如何处理?
库表数量过多导致报错,当前不支持恢复超过50000张表。建议您参考恢复全量数据方案,将数据新实例中。
说明
如临时使用,您可以创建按量付费或Serverless的新实例,把数据迁移到原实例,然后释放新实例。
实例创建完成后开始计费。
按时间点恢复库表时,还原时间点加载不出,出现错误提示操作失败,当前指定的恢复时间无效,请重新设置恢复时间。(错误码:InvalidRestoreTime.Format)如何处理?
按时间点恢复请确保实例日志备份已开启。前往实例备份恢复页面,在备份策略页面下查看或修改日志备份状态。请参见自动备份。
按备份集或时间点恢复库表时,出现错误提示元信息是空的(错误码:InvalidMeta.Empty)如何处理?
高性能本地盘实例需在开启库表恢复功能后进行一次手动备份,再选择新备份集进行恢复。必要时,您也可参考恢复全量数据操作进行恢复。
恢复后的表是空的,如何处理?
请确认所选时间点表的数据是否存在。若无数据,请选择有数据的时间点再进行恢复。
针对单个误删除操作如何进行数据恢复?
您可使用DMS数据追踪功能按需追踪到目标时间段内的相关更新,生成逆向回滚语句,并通过数据变更工单执行恢复。
RAM子账号登录RDS控制台备份恢复页面,找不到库表恢复按钮?
请检查RAM账号是否已添加AliyunDBSFullAccess权限。如何授权,请参见管理RAM用户的权限。
库表恢复功能和应急恢复功能应该如何选择?
库表恢复功能适用于误删除、误修改等情况,恢复特定库和表的数据。应急恢复功能适用于紧急情况,恢复整个实例的数据。
应急恢复功能是指在误操作或其他意外导致数据丢失或损坏时,在沙箱实例(非RDS实例)上恢复指定时间点的数据。可用于历史数据比对、脏数据订正等场景;也可通过DTS将数据导回原实例,来支持数据丢失或损坏的情况。
说明
若同时开启极速库表恢复和应急恢复功能,CDM会通过后台合并存储来降低存储费用。更多数据恢复方案,请参见数据恢复方案概览。
RDS云盘实例还有其他恢复库表的方法吗?
您可以使用数据灾备对云数据库、ECS自建数据库进行备份与恢复,同时数据灾备也支持将云上备份集下载到本地。
说明
库表恢复的更多方式,请参见库表级恢复或通过mysqldump进行备份和恢复。
如何快速回滚Binlog时间点文件?
单条或者少量DML操作,可使用DMS数据追踪进行恢复。
库表恢复的新表在哪里查看?
恢复的新表在rx_backup_task_no库中。