I have a owner with 400 tables, and about 800 indexes.
It takes like 3 hours to execute a dbms_utility.analyze_shema(owner, compute);
But if i do a script with:
analyze table table_name1 compute statistics;
analyze table table_name2... etc...
It takes like 1 hour.
Question: Does both do exactly the same thing, or analyze_schema does something more?
Yes they do things a little differently - unintentionally though.
It's the way the code in the background creates the cursor for the analyze that's different (which have a number of bugs by the way).
Use dbms_stats.gather_schema_stats(). Even this one is not full proof as I am finding out now.
Just test out the different methods of gathering statistics to determine which is best for you because of the different methods that they use.
Click Here to Expand Forum to Full Width