日期:2014-05-16 浏览次数:20412 次
在Oracle 数据库中,我们经常需要去手工分析表和索引,还有某个模式下所有的表和索引等等。oracle 提供了两种分析方法,分别是dbms_stats 包和analyze 命令。这些是我们在日常项目管理中的真实使用的方法,供参考。
在10g 中分析某一个用户下所有的对象,如user_miki 用户
sys.dbms_stats.gather_schema_stats(ownname => 'user_miki',estimate_percent => 30,method_opt => 'FOR ALL INDEXED COLUMNS SIZE AUTO',cascade => true,options => 'GATHER');
这是我在项目中分析一个用户所有对象的分析方法,取样比例为30% ,分析所有索引字段,生成柱形图,并且也分析索引。
?
(miki西游 @mikixiyou 文档,原文链接: http://mikixiyou.iteye.com/blog/1553986 )
?
在10g 中分析某一个用户下某一个表及其索引,如user_miki 用户下info 表和它的索引
execute dbms_stats.gather_table_stats(ownname => 'user_miki',tabname => 'info',estimate_percent => 30,method_opt => 'for all indexed columns size auto');
这是我在项目中单独分析一个用户中一张表的分析方法,取样比例为30% ,分析所有索引字段,生成柱形图,并且也分析索引。
?
我们在googl