收集全库的统计信息参数理解
经常使用一条收集数据库统计信息的语句,对它的参数不是很了解。网上搜索一下
exec dbms_stats.gather_database_stats(estimate_percent=>10,degree=>8,cascade=>true,granularity=>'ALL');
1)estimate_percent:
这个参数表示选择的采样比例,如果太低,收集速度会快,但可能不会很准确,如果太高,收集速度会慢,但比较准确,各有利弊。表示选择的采样比例,如果太低,收集速度会快,但可能不会很准确,如果太高,收集速度会慢,但比较准确,各有利弊,默认是100%。
2)degree
并行统计信息收集,应该根据对象的大小和并行性初始化参数的设置选择恰当的并行度,默认为null
3)cascade
这个参数表示是否收集表对应的索引、列等的统计信息
4)granularity
这个参数有四个值
① ALL:采集Global、partition、subpartition等粒度统计信息。
② AUTO:根据分区类型,由Oracle确定统计信息采集粒度。
③ PARTITION:只采集partition粒度统计信息。
④ SUBPARTITION:只采集subpartition粒度统计信息