DROP TENANT tenant_name PURGE是不是很多余

DROP TENANT tenant_name PURGE是不是很多余,直接DROP TENANT tenant_name FORCE不就好了

1 个赞

主要还是考虑了租户是否进回收站,purge是不进回收站,force要进回收站。。如果没开回收站,那么这两个参数其实就没区别

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002015472

1 个赞

force是不进回收站吧

好问题,我也有此疑惑。

从文字描述上看,感觉开了回收站,好像也没啥区别吧?有空儿了可以做个实验试试~

感觉这里的文档内容可能有些问题。@OceanBase文档

文档里的 “延迟删除” 应该是物理备份恢复中的相关技术。大概意思是说备份 A 时间点的数据,在 B 时间点备份完成,如果有个数据库对象,在 A 之前创建,在 A 到 B 之间被删除,那么不能真正删除,而是需要假删除(延时删除,或者叫标记删除。可以做到不占用命名空间,但是没有被真删除),否则没办法顺利完成备份。不过到了 B 时间点之后,还是会被后台线程删除。

这个 “延迟删除” 的概念可能不应该在文档里暴露给用户的~

等一个大佬解答

个人猜测应该是说 purge 表示不进回收站,force 表示即不进回收站,也不延迟删除。

不过大家对 “延迟删除” 这四个字可能都没啥概念……

是的,延迟的意义是什么,为什么要延迟,还有个问题就是回收站的东西是不是只能全部清空不能部分清除,如果是这样,好像延迟删除是不是为了补充部分清除的情况。

看我在五楼的回复吧,印象中延迟删除是和备份恢复、主备库相关的东西,和回收站没有直接关系。

回收站里的东西可以通过指定 object name 或者 original name 去定向清除,官方文档之前有疏漏,现在不知道有没有改过来,推荐去看下 DBA 入门教程的 6.4 小节吧。

1 个赞