行链接和行迁移的概念:

行迁移概念:
当一个行上的更新操作(原来的数据存在且没有减少)导致当前的数据不能在容纳在当前块,我们需要进行行迁移。
一个行迁移意味着整行数据将会移动,仅仅保留的是一个转移地址。因此整行数据都被移动,
原始的数据块上仅仅保留的是指向新块的一个地址信息。


成因:当行被update时,如果update更新的行大于数据块的pctfree值,就需要申请第2个块,从而形成迁移。

后果:导致应用需要访问更多的数据块,性能下降。

预防:1.将数据块的pctfree调大;

      2.针对表空间扩大数据块的大小。

检查:analyze table 表名 validate structure cascade into chained_rows;







行链接概念:
当一行数据太大而不能在一个单数据块容纳时,行链接由此产生。举例来说,当你使用了4kb的Oracle数据块大小,
而你需要插入一行数据是8k,Oracle则需要使用3个数据块分成片来存储。因此,引起行链接的情形通常是,
表上行记录的大小超出了数据库Oracle块的大小。

产生原因:当一行数据大于一个数据块,ORACLE会同时分配两个数据块,并在第一个块上登记第二个块的地址,从而形成行链接。

预防方法:针对表空间扩大数据块大小。

检查:analyze table 表名 validate structure cascade into chained_rows;

实验部分:
https://www.cnblogs.com/Richardzhu/p/3449243.html

 

你可能感兴趣的:(Oracle)