Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: How to "Defragment" Tablespaces ?

Re: How to "Defragment" Tablespaces ?

From: Ricky Sanchez <rsanchez_at_more.net>
Date: Mon, 02 Apr 2001 22:18:53 GMT
Message-ID: <3AC8FADE.6FEE827@more.net>

Now that everyone and his mother has given you an answer, you gotta ask yourself, "Why do I have to defragment a tablespace in the first place?"

When you create a tablespace, use uniform extents. Make initial = next and pctincrease = 0, make the default extent size some multiple of your operating system / file system multiblock read size. Pick a set of extents sizes and create sets of tablespaces accordingly. Place objects in them according to the default extent size. That way, whenever an object is dropped or truncated, its extents are all usable by other objects within that tablespace. Later, when all this is working fine, relocate objects in tablespaces that have heavy I/O contention. Never worry about indexes and tables having to be on separate drives.

No fragmentation problems ever again.

And, stripe and mirror everything.

Sylvain Brun wrote:

> Hello,
>
> Got Oracle Server 7.3.4, and would like to defragment some
> of my tablespaces.
>
> I tried to do this with "Tablespace Manager", but anything I
> can do (connected as System, having all rights set on, with admin
> option...),
> the "defragment" button is always disabled !
>
> Please, explain me how to do, or tell me what is the SQL syntax for this.
>
> Thanks,
>
> Sylvain.
>
> --
> =================================
> Sylvain Brun -- Société INFOLOGIC
> - Services et conseils en Informatique -
> Tél. 04 75 82 16 40 - Fax. 04 75 82 16 38
> =================================
  Received on Mon Apr 02 2001 - 17:18:53 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US