If you want the index height (or blevel + 1),
then you could dump the index root block

alter system dump datafile N block MM

Check dba_segments for the address of the
segment header block, unless you have
multiple freelist groups, the index root block
will be the one after the segment header.

You will find the blevel of the root block in
the symbolic dump in the line labelled
    kdxcolev.


For the 'right size' - I tend to work out roughly
how large a typical index entry ought to be,
multiple by the number of rows I expect to
have non-null entries - add a bit (for rowids)
and multiple by 4/3 (to allow for typical wastage).
If the result is about right, I stop worrying.

(NB  There may be special case indexes where
you have a finer knowledge of the application
and therefore use a value other than 4/3).


Regards

Jonathan Lewis
http://www.jlcomp.demon.co.uk

Now available One-day tutorials:
  Cost Based Optimisation
  Trouble-shooting and Tuning
  Indexing Strategies

(see http://www.jlcomp.demon.co.uk/tutorial.html )

____UK_______March 19th
____UK_______April 8th
____UK_______April 22nd

____USA_(FL)_May 2nd


Next dates for the 3-day seminar:
(see http://www.jlcomp.demon.co.uk/seminar.html )

____UK_(Manchester)_May
____USA_(CA, TX)_August


The Co-operative Oracle Users' FAQ
http://www.jlcomp.demon.co.uk/faq/ind_faq.html


----- Original Message -----
To: "Multiple recipients of list ORACLE-L" <[EMAIL PROTECTED]>
Sent: 11 March 2003 14:30


> I need to determine whether or not a couple of indexes need to be
rebuilt.
> The problem is the indexes are quite large and on a 24x7 high volume
> database. If I try to run an "analyze validate structure" to gather
the data
> I need to make that decision, it sets a lock on the table for about
an hour
> which I can't afford to do. There is no slow time when I can do this
and
> management has said before they're not going to spring for the
partitioning
> option to break the indexes up into managable pieces. Is there some
other
> way I can get the information needed to determine if an index needs
to be
> rebuilt or not without setting a lock on the table? We are on Oracle
8.1.7.
>

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Jonathan Lewis
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to