不同场景下恢复方式概览

数据误操作有多种场景,根据场景的不同以及对应数据库引擎版本的不同,PolarDB MySQL版提供了多种方式,帮助您恢复数据。本章节列举了常见的误操作的场景,您可根据实际情况,选择对应的数据恢复方式。

场景

数据库版本

恢复方式

误删表

5.6

采用库表恢复的方式恢复误删的表,包括按时间点恢复或者按备份集恢复两种方法:

5.7

8.0

若集群已开启表回收站功能,则可从表回收站中恢复误删的表;若未开启,则可通过库表恢复的方式恢复整个集群。

误删数据库

5.6

采用库表恢复的方式恢复误删的库,包括按时间点恢复或者按备份集恢复两种方法:

5.7

8.0

误删集群

5.6

从集群回收站恢复误删的集群

5.7

8.0

误操作表中数据,如整体覆盖、误删除/修改表中的列/行/数据

误操作受影响的数据量在10万以内

建议使用DMS数据追踪进行恢复方式,也可使用库表恢复和集群恢复方式。

误操作受影响的数据量超过10万

5.6

采用库表恢复的方式恢复误操作的库或表,包括按时间点恢复或者按备份集恢复两种方法:

若无法判断受影响的库和表,则也可以使用集群恢复的方式进行恢复。

5.7

8.0

常见问题

闪回查询和库表级恢复两者区别?
  • 成本:

    • 闪回查询开启后,其保留时间由loose_innodb_backquery_window参数决定,undo log会保留一定时长,导致存储空间成本升高。

  • 恢复时长:

    • 闪回查询为秒级。

    • 库表恢复时间为分钟级到小时级。

  • 恢复范围:

    • 闪回查询只针对行级进行恢复,适用于高频、最近时间内数据恢复。

    • 闪回查询不支持目标表最近一次DDL之前的时间点,所以场景仅适用于误删数据。

    • 闪回查询仅支持10W之内数据,数据量超过10W以上的数据会提示错误。

    • 库表恢复是对整个表的恢复,适用于低频、大面积数据恢复。