标签:
1. 行迁移
当发出update导致记录行长增加,block的剩余空间不足以存放这条记录,就会产生行迁移,发生行迁移时rowid不会改变,原来的block 中会用一个指针存放这条记录在新的block中的地址,发生行迁移会对性能产生影响,因为读这条记录会读两个BLOCK。
消除行迁移的办法:
注:步骤3,使用如下语句完成,analyze table table_name list chained rows into chained_rows;
作用是将产生行迁移的记录rowid存入表chained_rows。
2. 行链接
当一个BLOCK不足以存放下一条记录的时候,就会发生行连接,这个时候oracle会把这条记录分成几个部分,分别存放在几个block中,然后把这几个block chain起来。行连接同样会影响性能,因为读一条记录至少会读两个BLOCK.
标签:
原文地址:http://www.cnblogs.com/wolil/p/5684861.html