Oracle11g 从表中删除数据后的Oracle可用空间

Oracle11g 从表中删除数据后的Oracle可用空间,oracle11g,Oracle11g,我最近从数据库中的一些表中删除了一大块数据。现在我想释放数据所占据的空间。之后,我想重建索引。 释放空间的最佳方式是什么?你说的“释放空间”是什么意思?删除数据时,块中的空间被释放。该空间现在可用于在删除数据的表中进行后续插入(或更新)。这通常是足够的,因为表在将来通常会再次增长 如果要减小表段的大小并使空间可供同一表空间中的其他段使用,可以收缩表 ALTER TABLE table_name ENABLE ROW MOVEMENT; ALTER TABLE table_name SHRINK

我最近从数据库中的一些表中删除了一大块数据。现在我想释放数据所占据的空间。之后,我想重建索引。 释放空间的最佳方式是什么?

你说的“释放空间”是什么意思?删除数据时,块中的空间被释放。该空间现在可用于在删除数据的表中进行后续插入(或更新)。这通常是足够的,因为表在将来通常会再次增长

如果要减小表段的大小并使空间可供同一表空间中的其他段使用,可以收缩表

ALTER TABLE table_name ENABLE ROW MOVEMENT;

ALTER TABLE table_name SHRINK SPACE CASCADE;

此时通常不需要重建索引。

谢谢。为什么重建索引没有好处?@Kaushik-一般来说,Oracle中的索引不需要重建。收缩表通过在封面下执行一系列删除和插入操作来物理地重新组织表中的数据。
收缩空间
命令中的
级联
选项将该命令应用于索引等相关对象。在这一点上,您已经在索引上完成了相当于
合并
收缩
的操作——没有重建的意义。