fire off multiple dbms_stats.gather_schema 2004-07-08 - By DENNIS WILLIAMS
David
Oops, I read your posting more closely and it looks as if you are only
gathering statistics on tables that don 't have any. Am I reading that
correctly. Also, you might want to consider the SAMPLE SIZE AUTO. With a
fixed percentage you may be undersampling small tables and oversampling
large ones.
Dennis Williams
DBA
Lifetouch, Inc.
dwilliams@(protected)
I said it "looked " clear - Riddick
-- --Original Message-- --
From: oracle-l-bounce@(protected)
[mailto:oracle-l-bounce@(protected)]On Behalf Of DENNIS WILLIAMS
Sent: Thursday, July 08, 2004 .10:50 AM
To: 'oracle-l@(protected) '
Subject: RE: fire off multiple dbms_stats.gather_schema
David
Dumb question. I always understood that: "Whenever possible, dbms_stats
routines will run via parallel query ". Is there a reason this doesn 't work
for you?
Another idea. Instead of making dbms_stats run faster, consider whether
you are spending too many resources analyzing. dbms_stats can use the GATHER
STALE option. I think Wolfgang Breitling has stated that once his queries
are operating satisfactorily he doesn 't gather statistics any more.
Dennis Williams
DBA
Lifetouch, Inc.
dwilliams@(protected)
I said it "looked " clear - Riddick
-- --Original Message-- --
From: oracle-l-bounce@(protected)
[mailto:oracle-l-bounce@(protected)]On Behalf Of David
Sent: Wednesday, July 07, 2004 5:42 PM
To: oracle-l@(protected)
Subject: fire off multiple dbms_stats.gather_schema
I am using dynamic sql to generate code that will analyze schemas. I
would just gather_database stats, but the request is that I use
dbms_stats.gather_Schema so that the process can be broken down into
concurrent sets and run concurrently(and with parallel). Does anyone have
any advice, ideas or tips on how I might accomplish this?
Here is what I 'm currently using:
select
'exec dbms_stats.gather_schema_stats(ownname= > ' ||chr(39)||
owner||chr(39)|| ' ,estimate_percent= > 10 ,cascade= > TRUE , block_sample= >
TRUE ,degree= > 4); '
FROM DBA_TABLES
WHERE OWNER NOT IN ( 'SYS ')
AND PARTITIONED = 'NO '
AND LAST_ANALYZED < SYSDATE - 14
UNION
select
'exec dbms_stats.gather_schema_stats(ownname= > ' ||chr(39)||
owner||chr(39)|| ' , estimate_percent= > 10 ,cascade= > TRUE , block_sample= >
TRUE ,degree= > 4); '
FROM DBA_TABLES
WHERE OWNER NOT IN ( 'SYS ')
AND LAST_ANALYZED IS NULL;
Yes, I do know that the options clause will take care of some of the
functionality that I am filtering via the predicate and I have plans to
incorporate that feature.
Thanks!
--
..
David
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
To unsubscribe send email to: oracle-l-request@(protected)
put 'unsubscribe ' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
To unsubscribe send email to: oracle-l-request@(protected)
put 'unsubscribe ' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ------
To unsubscribe send email to: oracle-l-request@(protected)
put 'unsubscribe ' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- --
|
|