liduanfeng 发表于 2010-12-1 19:29:44

表空间碎片处理问题 -大师过来看看


表空间碎片处理问题

表空间碎片问题有点困惑,请各位给我解惑一下!
例如:

TABLESPACE_NAME               FSFI

TEST                                    100
TEST01                                 30
TEST02                                 2.999999


请问以上的表空间中是不是TEST01和TEST02两个表空间需要进行碎片整理??

并且输入命令 alter tablespace test01 coalesce;             ----怎么回收不了表空间碎片呢?

liduanfeng 发表于 2010-12-2 09:00:24

怎么没人回答呢 ?

xingxing 发表于 2010-12-2 09:50:59

试试用shrink 或者move

oraunix 发表于 2010-12-2 11:07:37

首先这个参数只是对字典管理的表空间有意义,如果是本地管理的表空间,这个参数的大小没有影响。你的命令也就没有什么意义。

xingxing 发表于 2010-12-2 12:21:03

像老师说的,LMT 中alter tablespace xxx coalesce 没有影响,ascade是合并相邻的,而且只适合字典管理的表空间。那么使用本地管理的表空间还有碎片的说法吗?

oraunix 发表于 2010-12-2 13:45:31

本地管理表空间已经没有了碎片之说,就像我们的NTFS已经不关心碎片一样。
里面的FSFI已经没有任何意义。

liduanfeng 发表于 2010-12-2 16:57:57

恩 明白了

fanchungang 发表于 2010-12-4 17:13:11

本帖最后由 fanchungang 于 2010-12-4 17:14 编辑

oraunix 发表于 2010-12-2 13:45 static/image/common/back.gif
本地管理表空间已经没有了碎片之说,就像我们的NTFS已经不关心碎片一样。
里面的FSFI已经没有任何意义。 ...
补充一下:对于本地管理的表空间,留意是否设置了uniform。extent的管理方式默认是AUTOALLOCATE会导致表空间中extent大小不一而导致部分空间无法使用。
EXTENT MANAGEMENT
   { LOCAL
   [ AUTOALLOCATE
   | UNIFORM
       [ SIZE size_clause ]
   ]
   | DICTIONARY
   }
提示,如果要设置uniform是需要重建表空间的。

如果要想释放一些空间可以考虑
1.对与存在大量delete的表可以进程move
2.或者对表空间的段整体进行 move compress
页: [1]
查看完整版本: 表空间碎片处理问题 -大师过来看看