【问题标题】:Do I need to move local index after table moved to different tablespace表移动到不同的表空间后是否需要移动本地索引
【发布时间】:2015-07-21 14:22:53
【问题描述】:

当一个表有几个索引是本地索引时,我对将表移动到不同的表空间有点困惑,我想这意味着索引存储在与所有者表相同的某个表空间中,所以当我将表移动到不同的表时表空间,然后本地索引也被移动,然后我只需要在不指定表空间的情况下重建它们。

我是说

ALTER INDEX XXX REBUILD;

而不是

ALTER INDEX XXX REBUILD TABLESPACE XX;

我是对的还是我在这里遗漏了什么?

【问题讨论】:

    标签: sql database indexing oracle11g ddl


    【解决方案1】:

    将索引定义为local 与存储它的表空间无关。 local 指的是分区索引的分区方式与它们所指的表相同,而不是 global 分区索引,它有自己的分区定义(甚至定义为非分区),无论表的分区如何。

    正如您所指出的,在移动表之后,您必须重建其索引,但这可以对任何表空间进行,无论索引的 localglobal 定义如何。默认情况下,如果未给出存储子句,则索引将在已存储的表空间上重建。

    【讨论】:

      猜你喜欢
      • 2019-04-13
      • 2021-05-04
      • 1970-01-01
      • 2019-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-16
      • 1970-01-01
      相关资源
      最近更新 更多