【IT专家网独家】 Move命令压缩Oracle块中的记录、解决行链接问题,并重置表的高水平线。
move和shrink命令都会重置表的高水平线,那么哪个命令更有效呢?这篇文章讨论使用move和shrink命令重新组织一个表,然后比较Oracle块的记录被压缩得怎么样以及行链接解决得怎么样。
注意:关于表高水平线和重置表高水平线的不同方法的详细讨论不在这篇文章的讨论范围内。
下面的步骤简要描述了使用move和shrink命令对TEMP_JP表进行重组时对该表的各种操作。在这一系列步骤中出现的一些异常被清晰地标注出来(Move相关的命令是以蓝色表示,Shrink相关的命令是以绿色表示)。
01–03
创建表temp_jp并插入2500条记录到这个表中。
04
显示在表的Oracle块中的记录分配。
奇怪的是,插入到每个Oracle块中的记录数不是相同的。
05
索引表temp_jp。
06
检验表和索引的磁盘空间利用情况。
默认情况下,Oracle为一个表分配一个区间,为一个索引分配两个区间。
07
对temp_jp表添加一个第三列来模拟行链接。
08
分析Temp_jp表。
09
从temp_jp表选择行数和链接行数。
temp_jp表中几乎所有的记录都是链接的。
10
在模拟行链接之后检查表和索引的磁盘空间利用情况。
表temp_jp的磁盘空间使用增加了10番。
11
删除这个表的所有记录,使这个表中每个Oracle块只留一条记录。
12
在删除记录之后,展开显示temp_jp表的记录。
记录的数目显示了每个Oracle块是一致的,因为我们删除了这个表的所有记录,这个表中每个Oracle块只留一条记录。
13
分析Temp_jp表。
14
从temp_jp表选择行数和链接行数。
15
检查temp_jp表的索引状态。它是VALID。
16
16-A
对表执行move操作。
16-BA







评论列表