我误删了几条数据了,已经过了6个小时了,备份集很大很大,怎么能恢复呢这几条数据呢?

怎么恢复呢?

FLASHBACK TABLE table_name [TO other_table_name]
https://docs.pingcap.com/zh/tidb/stable/sql-statement-flashback-table#flashback-table
如果gc的快找时间还在的话 看看能不能恢复回去,这应该是最简单的方法了
不过前提是快照还在

如果可以 flush的快照的时间点刚好在,
flush到新表 查出来 更新回去

不行啊,已经gc掉了

感觉只能找备份了

架构是什么样呢,有没有接CDC,binlog之类的,还是就单纯的一套集群

备份是怎么备份的呢,逻辑的还是物理的?

我用的br备份

binlog有打开,但是不知道是不是真的打开了,不知道目录在哪里

https://docs.pingcap.com/zh/tidb/stable/tidb-binlog-reparo
根据官网看下,里面有配置项,看看你的配置是什么样,pumper,drainer的位置,输出到哪里

不能flashback就用binlog吧

通过备份+binlog恢复吧


这个方案可行。 输出到文件。 您在进行 关键字搜索。

我们仅仅需要 那几条数据, 可以设置 开始时间和结束时间。 大约几个时间。 应该就行

可以使用 TiDB v6.4.0 引入的闪回(Flashback)功能来快速恢复数据。您可以将数据恢复到指定的时间点,只要在 GC 时间内即可。具体操作请参考 Flashback ClusterFlashback Database

1 个赞

你有br的备份,可以直接使用br备份的数据,只恢复你误删数据的表。为了保险起见,可以另外搭建一个单节点集群进行恢复。

如果有br本分应该可行

gc时间tidb默认不是5分钟吗,一下子就过去了。

但是增量的数据是不是也要用binlog恢复呢,不确定备份到删除的这段时间里记录有没有变动过

gc时间设置太长不是会影响性能吗