1.对表空间执行一次碎片整理. ALTER TABLESPACE TABLESPACE_NAME COALESCE;2.假如你的版本是10G的话,可以执行Shrink命令,来缩小表空间。 它是对表或者索引的操作。需要得到行移动的允许。
如果将一张表想象成水平结构,一系列的块都是从左向右排列,成一条直线放置,高水标记(high water )就是曾经包含数据的最右边的块。随着数据不断地放入表中,使用了更多的块,从而高水标记不断上升,如果删除了一些表中的行,有许多块可能不再包含数据,但是这些块仍然在高水标记以下,并且保持在高水标记以下直到对象被重建或删减。在全扫描期间,Oracle将扫描高水标记以下的所有块,即使它们不包含数据,这将影响全扫描的性能,尤其高水标记以下的大部分块都是空时。truncate将重新设置表的高水标记,让它返回0,而delete表中所有行时高水标记不会改表。如果计划删除表中的每一行时,使用truncate方法比较合适。
alter table tbl_test move tablespace xxx;
alter table tbl_test move tablespace yyy;
在本地做就可以了.前提你需要有相当于此表大小的free空间.alter table tablename move;就可以了.
ALTER TABLESPACE TABLESPACE_NAME COALESCE;2.假如你的版本是10G的话,可以执行Shrink命令,来缩小表空间。
它是对表或者索引的操作。需要得到行移动的允许。