移动分区

移动分区:移动分区操作,可以实现指定子分区表( 范围、列表、哈希分区表 )在不同表空间之间的移动;通过在不同表空间的数据段移动可以重簇数据段以减少碎片,同时也可以改变创建时的物理属性。使用移动分区的好处:

  • 重新创建数据段以减少碎片
  • 移动到另一个表空间
  • 修改创建时间属性
  • 使用表压缩的压缩格式来压缩存储分区数据

可以使用ALTER TABLE/INDEX...MODIFY PARTITION语句来单独的更改一个子分区表的物理存储属性。但是,有些物理属性(如:表空间)不能使用修改分区操作进行修改。在这种情况下就可以使用移动分区操作。对于常规表(相对与索引组织表等其它表)的ALTER TABLE...MOVE PARTITION语句,标记全局分区索引的所有的分区为UNUSABLE。可以通过使用ALTER INDEX...REBUILD PARTITION语句单独重建每个分区的方式重建整个索引。可以在移动表分区的同时,同步的执行这些重建操作。也可以简单的删除该索引,而后重新创建。

在移动分区时,应注意以下规则:

  • 如果表中含有lob列,那么也会移动子分区内的lob数据。
  • 移动后子分区表相关联的局部子分区索引将失效,局部主分区索引被标记为失效。
  • 移动后全局分区/非分区索引失效。
  • 移动分区操作的对象不可以是复合分区中的一级子分区表。
  • 移动分区操作不支持一次性移动多个子分区表。