|
> 我该如何去判定我的数据库中是否存在碎片?
There're two meanings here, segment fragmentation (much more extents than the segment should have) and free space fragmentation (much more rows in dba_free_space than it should have). In both cases, as I already said, you can try alter table move (no need to specify tablespace). Moving a table could merge some extents together, and also move the segment toward the beginning of the datafile.
How much more is more than it should? There's no good answer. I personally don't think it's worth the time to work on it.
> 是row migration造成的,还是chaining造成的呢?
That's a totally different subject. Do you have rows across blocks? You see a lot of 'table scans (long tables)' statistic value?
In short, tell us what performance problem you see? Or if you're concerned about wasted space?
Yong Huang |
|