库表恢复是指仅恢复指定的部分库或部分表到原集群。例如游戏业务中有时仅需恢复某个或某些玩家的数据,此时可使用库表恢复方式。库表恢复支持从备份集恢复和恢复到过去时间点两种备份方式。从本文介绍如何将指定的库或表恢复到过去时间点。

使用限制

PolarDB集群版本需为以下版本之一:
  • PolarDB MySQL引擎 5.6版本且内核小版本需为5.6.1.0.24及以上。关于如何升级小版本,请参见版本管理
  • PolarDB MySQL引擎 5.7版本且内核小版本需为5.7.1.0.8及以上。

注意事项

  • 库表恢复只会恢复指定的表,操作时请确认已选中所有需要恢复的表。
    说明 若无法确定所有涉及的表,建议您将整个集群的历史数据恢复到一个新集群后再迁移至原集群。更多详请,请参见全量恢复方式1:从备份集恢复全量恢复方式2:恢复到过去时间点
  • 当选择按时间点的方式进行库表恢复时,若最近一份备份集生成时间点到指定恢复的时间点内指定的表已被删除,库表恢复会失败。
  • 每次最多支持恢复100张表。若选择恢复库,则支持恢复的表数量为该库下所有的表。
    说明 若您需要恢复的表数量较多,建议您选择恢复全量历史数据到新集群中的方案,详细操作步骤,请参见全量恢复方式1:从备份集恢复全量恢复方式2:恢复到过去时间点
  • 集群内的表低于50000张才可以使用库表恢复功能,超过50000张表时无法使用。
  • 库表恢复功能不支持恢复触发器(Trigger),若原表设置了Trigger,该Trigger不会被恢复。
  • 库表恢复功能不支持恢复外键(Foreign Key),若原表设置了Foreign Key,该Foreign Key不会被恢复。

操作步骤

  1. 登录PolarDB控制台
  2. 在控制台左上角,选择集群所在地域。
  3. 找到目标集群,单击集群ID。
  4. 在左侧导航栏中,选择配置与管理 > 备份恢复
  5. 备份恢复页面,单击库(表)恢复
  6. 在弹出的对话框中,选择恢复方式按时间点,并选择需要恢复至的时间点。
    2
    说明 恢复至的时间点选择需符合可恢复时间点的限制,同时离该时间点最近一份全量备份集中必须存在需要恢复的表,才能正常使用按时间点恢复功能。可恢复时间点的范围与备份设置中的日志备份保留期限有关,默认为7天。
  7. 需要恢复的库和表区域左侧,选中需要恢复的目标库,并在右侧选中目标表。
    1
    说明
    • 若选中目标库后但不指定具体的数据表,默认恢复该库下的所有数据。
    • 选中目标库或目标表后,系统会自动在原库或原表名称(如test)后加_backup作为新库或新表的名称(如test_backup),您也可以自定义恢复后的库名或表名。
  8. 单击确定即可。

相关API

API 描述
DescribeMetaList 调用DescribeMetaList接口查看支持恢复的库表元信息详情。
RestoreTable 调用RestoreTable恢复PolarDB库表。