ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle table 參數 之 pctincrease

oracle table 參數 之 pctincrease

原创 Linux操作系统 作者:treesofthehill 时间:2009-02-18 12:22:46 0 删除 编辑

oracle table 參數 之 pctincrease

作者:雨夜孤帆

关于pctincrease与空间碎片回收的几点看法
1.PCTINCREASE>0 的时候SMON 会自动合并表空间中的碎片,等于0的时候只能手工回收
2.PCTINCREASE>0 造成extent不一致甚至可能因为几何增长的缘故造成一个next需要的空间太大
3.固定的next且较小可能造成表的存储段太离散,对查询很不利
所以,碎片能合并(回收)但是并不等于能利用:
而造成碎片的原因是因为表的存储的段离散而extent不一致所造成的
一旦PCTINCREASE>0 ,如果next较多会造成很多问题
就算能合并碎片,但是这些空间也不能很好的利用,甚至很可能利用率比较低
很简单的一个例子:
3+4=7 这是smon合并相临碎片
但是这时由于PCTINCREASE>0 的原因,有可能的话,next extent已经为5了
那么,7-5=2这部分就几乎永远浪费了(除非重建表空间)
尽量保持在表空间所有表的next一致,然后PCTINCREASE=0
这样,就算smon不自动合并临近的碎片,这些碎片也能重复利用
如果能定期的手工合并,那当然也是可以的
顺带说点题外话:
这里所说的碎片完全是指表truncate或者drop后释放出来的空间
不是delete后留下来的空间,smon是不能解决delete所浪费的空间的

Pctincrease不只是针对表空间的,一样可以对表进行设置
不过一般来说,对表设置为0。目前我还没有发现对表设置为非0值有任何好处。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9537053/viewspace-555199/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-06-11

  • 博文量
    97
  • 访问量
    177515