flashback table闪回操作,不支持DELETE,INSERT,UPDATE吧?

flashback table闪回操作,不支持DELETE,INSERT,UPDATE吧?

我看手册,只能支持DROP和TRUNCATE操作。

另外,flashback cluster是针对集群的,闪回后,其他表也会受影响。

https://docs.pingcap.com/zh/tidb/v7.1/sql-statement-flashback-cluster#示例

gc时间内支持

这个是全局的,不是局部,例如我只误操作了t1表,我执行flashback cluster,其余表也跟着一起回滚了,这是不对的。

https://docs.pingcap.com/zh/tidb/v7.1/read-historical-data
用这个,快照读。

1 个赞

https://docs.pingcap.com/zh/tidb/v7.1/sql-statement-flashback-table
https://docs.pingcap.com/zh/tidb/v7.1/sql-statement-flashback-database
还有闪回表,闪回库。都能搞。

1 个赞

你flashback cluster 肯定啊,你针对 t1 表,你就针对 t1 表flashback 呀,flashback 有table、database、cluster 三个维度

虽然不能闪回,但是你可以用as of timespace查历史mvcc数据 或者 dumpling 工具、br工具导出历史数据

flashback table只能针对DROP/TRUNCATE,无法针对DML操作,你可以试试

那肯定,flashback table 本质是把表的 drop、truncate 这两个 ddl 操作恢复,你的误操作指 insert、update、delete 这样的 dml ?但实际应用场景,这类 dml 误操作很少吧,如果实在想要恢复这种 dml 操作,就在 gc 时间内 使用 使用 AS OF TIMESTAMP 语法读取历史数据 | PingCAP 文档中心 这个功能,去读历史数据呗

2 个赞

谢谢已解决。

居然也有 as of timestamp 的操作,太方便了

类似oracle

GC 内都可以闪回,无论是dml还是ddl

:+1:

没想到还有这个功能,谢谢分享

你flashback cluster 肯定啊,你针对 t1 表,你就针对 t1 表flashback 呀,flashback 有table、database、cluster 三个维度

flashback table只能针对DROP/TRUNCATE,无法针对DML操作。这个和oracle也是有区别的

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