如果gc过期了,那么要怎么恢复误修改的数据?

有其他备份吗 gc后就没了吧。

只需要关注tidb_gc_life_time参数的大小就行。这个变量用于指定每次进行垃圾回收 (GC) 时保留数据的时限。每次进行 GC 时,将以当前时间减去该变量的值作为safe point,清理之前的旧版本数据。
只要tidb_gc_life_time大于,C-A的时间间隔,那么数据就可以找回来。

1 个赞

好的,目前看起来正常的做法就是设置tidb_gc_life_time参数了

应该就是没有备份,有备份估计就不用这么麻烦了

通过raft log不行的,raft log也不可能一直保存的,也有gc。而且要可以,ticdc也不至于超过gc时间changefeed就无法启动了。

这个时候只有br可以。

GC过期了应该是恢复不了了,但是gc也不能调的太长,时间太长会导致版本太多,可能会影响查询速度。

这种情况下只能通过备份还原出来。毕竟这条数据物理上已经从tikv中彻底删除了。
还是老生常谈的问题,生产环境中,任何变更都流程化,减少问题出现的概率。
同时尽可能对表的任何增删改变更,都提前来一次快照备份,例如create table xx as select xxx,或者其它类似手段,双重保险。

可以用之前的备份检查来进行恢复吧

如果没有任何备份的话,就没办法恢复了

gc之后没办法恢复,要么备份,要么有binlog。

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。