Fosdccf.blog.chinaunix.net
sdccf
全部博文(19283)
Linux酷软(214)
tmp(0)
PostgreSQL(93)
Solaris(383)
AIX(173)
SCOUNIX(575)
DB2(1005)
Shell(386)
C/C++(1187)
MySQL(1750)
Sybase(465)
Oracle(3695)
Informix(548)
HP-UX(0)
IBM AIX(2)
Sun Solaris(0)
BSD(1)
Linux(8597)
SCO UNIX(23)
2011年(1)
2009年(125)
2008年(19094)
2007年(63)
clifford
linky521
曾德标
fengzhan
leon_yu
mcuflowe
yt200902
guanyuji
GY123456
snow888
carlos94
丸喵喵
sean229
cxunix
可怜的猪
cqxc413
xzzgege
wb123456
分类: Oracle
2008-04-30 18:32:07
关于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值有任何好处。
原文:http://yygf.blog.ccidnet.com/blog-htm-itemid-117659-do-showone-type-blog-uid-40183.html
上一篇:ORACLE备份策略(ORACLE BACKUP STRATEGY)
下一篇:Oracle中插入图片并显示(用BLOB类型)
登录 注册