gpt4 book ai didi

oracle - 删除空分区。索引是否标记为无效?

转载 作者:行者123 更新时间:2023-12-01 15:02:04 26 4
gpt4 key购买 nike

我想删除一个空的分区,但我知道每当您执行像 DROP 这样的分区 DDL 语句时,oracle 都会将所有索引设置为不可用,因此,我应该将 UPDATE GLOBAL INDEXES 添加到声明虽然看起来没有必要。

然后我想出了this post它说它不会将其标记为不可用,所以我决定对其进行测试。问题是我在两个 oracle 版本中测试了它并且它的工作方式不同!

有两个实例:

  • DBa(Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production)
  • DBb(Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production)

在 DBa 中,它将它们标记为无效,而在 DBb 中,它包含与其他数据库(使用 exp/imp 克隆)相同的数据,它成功删除而不标记它们不可用。

是否可以明确地告诉 Oracle 您希望保持索引可用,因为分区中没有数据(无需重建索引)?

最佳答案

到目前为止,我无法找出为什么它在一个地方被标记为无效,但在另一个地方却没有,但如果有人遇到同样的问题,我有话要说。

始终使用 UPDATE GLOBAL INDEXES 运行它,因为如果分区为空,则执行删除不会花时间,并且它确保索引不会被标记为无效。因此,没有理由希望 oracle 不会标记它们

关于oracle - 删除空分区。索引是否标记为无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19250542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com