Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Analyzing indexes
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
> 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: jonathan_at_jlcomp.demon.co.uk 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: ListGuru_at_fatcity.com (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).Received on Tue Mar 11 2003 - 16:54:30 CST
![]() |
![]() |