ob的truncate闪回问题

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】OB
【 使用版本 】CE 4.1.0.0
【问题描述】社区版的OB支持truncate闪回吗,为什么ob_enable_truncate_flashback变量打开了,truncate表之后show recyclebin看不到东西呢
【复现路径】打开ob_enable_truncate_flashback变量,truncate表然后show recyclebin
【问题现象及影响】

【附件】

关于OceanBase 数据库数据库对象进入回收站机制的相关问题。 - 社区问答- OceanBase社区-分布式数据库
ob_enable_truncate_flashback变量可以参考上面的连接

TRUNCATE TABLE是把数据截断回收了

ob_enable_truncate_flashback是开启truncate闪回,为啥会没有数据呢,没有理解

执行TRUNCATE TABLE语句时是完全清空指定表,但是会保留表结构,包括表中定义的 Partition 信息
TRUNCATE TABLE-OceanBase 数据库 -OceanBase文档中心-分布式数据库使用文档

ob_enable_truncate_flashback是配合TRUNCATE TABLE语句是否把数据截断回收了
如果ob_enable_truncate_flashback默认on,则表示用户执行删除操作的对象会进入回收站。
设置off就会通过这俩步


来创建一个一模一样的表结构和表中定义的 Partition 信息

OceanBase 数据库中,TRUNCATE TABLE 语句并不会将数据放入回收站。与 DROP TABLE 不同,TRUNCATE TABLE 是用来快速清空表中的所有数据,但它并不涉及表的元数据删除,而是保留表结构,并且不记录回滚日志。因此,当执行 TRUNCATE TABLE 后,无法通过回收站功能恢复被清空的数据。

这个是和版本有关的,3.x 支持,然后 4.x 上功能回退了,但是相关的系统变量没删除。
详见:OceanBase 社区

1 个赞