数据误操作有多种场景,根据场景的不同以及对应数据库引擎版本的不同,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以上的数据会提示错误。
库表恢复是对整个表的恢复,适用于低频、大面积数据恢复。