库表恢复:按备份集恢复

若您要恢复至的时间点是某个备份集(快照)的时间点,可通过按备份集(快照)恢复的方式恢复误操作的数据库或者表的数据。

前提条件

已存在备份集(快照)。

版本要求和使用限制

版本要求

说明

您可以通过查询版本号来确认集群版本。

  • 当前PolarDB MySQL版企业版标准版都支持库表恢复功能,具体版本要求及限制如下。

    • PolarDB企业版支持库表恢复。目前仅集群版系列支持库表恢复功能,集群版本要求如下:

      • PolarDB MySQL版5.6版本,修订版本需为5.6.1.0.25及以上。

      • PolarDB MySQL版5.7版本,修订版本需为5.7.1.0.8及以上。

      • PolarDB MySQL版8.0.1版本,修订版本需为8.0.1.1.14及以上。

      • PolarDB MySQL版8.0.2版本,修订版本需为8.0.2.2.0及以上。

    • PolarDB标准版支持库表恢复,集群版本要求如下:

      • PolarDB MySQL版5.7版本X86架构,修订版本需为5.7.1.0.30及以上。

      • PolarDB MySQL版8.0.1版本X86架构,修订版本需为8.0.1.1.38.2及以上。

      • PolarDB MySQL版8.0.2版本X86架构,修订版本需为8.0.2.2.21及以上。

      • PolarDB MySQL版8.0.1版本倚天(ARM)架构,修订版本需为8.0.1.1.41及以上。

      • 若存储类型为云盘,则不支持50000张表以上的库表恢复。

  • GDN中的主集群支持库表恢复功能,集群版本要求如下:

    • 企业版

      • PolarDB MySQL版5.6版本,修订版本为5.6.1.0.42及以上。

      • PolarDB MySQL版5.7版本,修订版本需为5.7.1.0.30及以上。

      • PolarDB MySQL版8.0.1版本,修订版本需为8.0.1.1.44及以上。

      • PolarDB MySQL版8.0.2版本,修订版本需为8.0.2.2.25.3及以上。

    • 标准版

      • PolarDB MySQL版5.6版本,修订版本为5.6.1.0.42及以上。

      • PolarDB MySQL版5.7版本,修订版本需为5.7.1.0.30及以上。

      • PolarDB MySQL版8.0.1版本,修订版本需为8.0.1.1.38.2及以上。

      • PolarDB MySQL版8.0.2版本,修订版本需为8.0.2.2.21及以上。

  • 支持使用库表恢复新版的集群版本要求如下:

    • 企业版

      • PolarDB MySQL版5.6版本,修订版本为5.6.1.0.42及以上。

      • PolarDB MySQL版5.7版本,修订版本需为5.7.1.0.30及以上。

      • PolarDB MySQL版8.0.1版本,修订版本需为8.0.1.1.44及以上。

      • PolarDB MySQL版8.0.2版本,修订版本需为8.0.2.2.25.3及以上。

    • 标准版

      • PolarDB MySQL版5.6版本,修订版本为5.6.1.0.42及以上。

      • PolarDB MySQL版5.7版本,修订版本需为5.7.1.0.30及以上。

      • PolarDB MySQL版8.0.1版本,修订版本需为8.0.1.1.38.2及以上。

      • PolarDB MySQL版8.0.2版本,修订版本需为8.0.2.2.21及以上。

    说明

    库表恢复新版是在库表恢复旧版的基础上,对数据恢复至原集群的速度进行了优化。其原理和速度可参见整体流程和预估时间

使用限制

  • PolarDB多主集群(库表)不支持库表恢复。

  • 不支持在包含全局二级索引(Global Secondary Index)的表上使用库表恢复功能。

  • 如果实例没有RO节点,超过50000张表时将不支持库表恢复功能。

  • 不支持在GDN中的从集群上使用库表恢复功能。

  • 库表恢复功能不支持恢复列存索引。

  • 不支持在归档为冷数据的表上使用库表恢复功能。

  • 库表恢复功能只支持恢复以InnoDB为存储引擎的表。

说明

若您当前集群不支持使用库表恢复功能,您可以通过全量恢复方式1:从备份集恢复全量恢复方式2:恢复到过去时间点的方式将数据恢复到新的集群,再将数据迁移至原集群。

注意事项

  • 当前库表恢复方式只支持从一级备份恢复,不支持从二级备份恢复。

  • 库表恢复只会恢复指定的表,操作时请确认已选中所有需要恢复的表。

    说明

    若无法确定所有涉及的表,建议您使用集群恢复的方式恢复全量集群。

  • 集群内的表(包括系统表)超过50000张时也可以使用库表恢复功能。

  • 若选择非整库恢复,该库每次最多支持恢复100张表。若选择恢复库,则支持恢复的表数量为该库下所有的表。

    说明

    若您需要恢复的表数量较多,建议您使用集群恢复的方式恢复全量集群。

  • 库表恢复功能不支持恢复触发器(Trigger),若原表设置了Trigger,该Trigger不会被恢复。

  • 库表恢复功能不支持恢复外键(Foreign Key),若原表设置了Foreign Key,该Foreign Key不会被恢复。

  • 建议在业务低峰期进行数据恢复。

步骤一、开始库表恢复

  1. 进入集群详情页,在左侧导航栏中,选择配置与管理 > 备份恢复
  2. 备份恢复页面,单击库(表)恢复

  3. 在弹出的对话框中,您可以根据业务需要选择恢复方式按备份集,并在备份集列表中选择目标备份集。

    1

  4. 需要恢复的库和表区域左侧,选中需要恢复的目标库,并在右侧选中目标表。

    1

    说明
    • 若选中目标库后但不指定具体的数据表,默认恢复该库下的所有数据。

    • 选中目标库或目标表后,系统会自动在原库或原表名称(如test)后加_backup作为新库或新表的名称(如test_backup),您也可以自定义恢复后的库名或表名。

  5. 单击确定即可。

步骤二、进行数据比对

当库表恢复完成后,您可以登录集群,进行数据比对,验证数据。

您可通过DMS登录集群,也可通过其他客户端或者命令行的方式。本文介绍通过DMS登录集群进行验证,关于其他方式,请参考连接数据库集群

  1. 在集群的基本信息页面右上角,单击登录数据库
    基本信息
  2. 在弹出的对话框中,输入集群的数据库账号数据库密码,单击登录登录页面
  3. 登录DMS后请刷新页面,在左侧导航栏中,单击已登录实例
  4. 已登录实例列表中,单击目标集群名称,找到并双击目标数据库名称,即可切换到目标数据库进行管理。
    1
  5. 查找到误操作的数据,确认其是否已恢复到误操作前,且其他数据也和误操作发生前一致。