Analyze Table

select 'ANALYZE TABLE '||u.table_name||' VALIDATE STRUCTURE CASCADE ;',u.TABLESPACE_NAME from user_tables u;

 查询出当前表空间所用用户表。

执行语句:

ANALYZE TABLE table_name VALIDATE STRUCTURE CASCADE ;

以下是分享信息:

对于使用CBO很有好处,可以使用更可靠的table信息,从而执行计划也可以更准确一些,在10g会自动analyze,之前的版本需要手动定期。

生成统计信息,,选择合理的执行计划..

Oracle的online document这样描述analyze的作用:
Use the ANALYZE statement to collect non-optimizer statistics, for example, to:

1、Collect or delete statistics about an index or index partition, table or table partition, index-organized table, cluster, or scalar object attribute.
2、Validate the structure of an index or index partition, table or table partition, index-organized table, cluster, or object reference (REF).
3、Identify migrated and chained rows of a table or cluster.

对于收集统计信息这块,我一般使用dbms_stats这个package,收集统计信息的做用使CBO方式的优化选择执行计划更准确。

统计信息最好定期收集,以业务的不同确定不同的收集周期。

猜你喜欢

转载自minyongcheng.iteye.com/blog/1982302