ZKX's LAB

oracle 表高水位线 很精辟的oracle高水位线,终于知道DELETE和TRUNCATE为什么不一样了

2021-04-06知识3

oracle设置水位线有什么作用,或者说有什么好处?请给解释一下,谢谢了。 高水位线的意思是oracle数据块历史使用空间的最高点,好处就是比如做全表扫描的话,有了高水位线,全表扫描只会扫描到水位线处,再向上就不会扫描了,因为根本没有数据,所以对oracle查询性能是有一定的帮助的,另外如果一个表做过大量的delete操作的话,需要定时shrink,因为delete不回收高水位,下次做全表扫描的时候还会扫描到高水位线,但其实高水位以下很多都是free的空间,会影响全表扫描的性能,这也是如果你想删除表中所有数据时最好用truncate的原因,因为truncate回收高水位。

oracle 如何查看表 高水位线 select blocks,empty_blocks from dba_tables where table_name='xxx' and owner='xx';blocks就是已经分配的2113空5261间即HWM,实际4102分1653配的空间,不是实际大小

很精辟的oracle高水位线,终于知道DELETE和TRUNCATE为什么不一样了 建议把segment作为表的一个同义词)都有一个在段内容纳数据的上限,我们把这个上限称为\"high water mark\"或HWM。这个HWM是一个标记,用来说明已经有多少没有使用的数据块分配给这个segment。HWM通常增长的幅度为一次5个数据块,原则上HWM只会增大,不会缩小,即使将表中的数据全部删除,HWM还是为原值,由于这个特点,使HWM很象一个水库的历史最高水位,这也就是HWM的原始含义,当然不能说一个水库没水了,就说该水库的历史最高水位为0。

#oracle表占用的空间#oracle 表高水位线

随机阅读

qrcode
访问手机版