1.4.7 信息统计工具dbms_stats.gather_table_stats

来源:互联网 发布:免费发短信软件哪个好 编辑:程序博客网 时间:2024/06/03 14:45
Oracle的优化器是CBO,所以对象的统计数据对执行计划的生成至关重要,如果执行计划有误可以使用dbms_stats.gather_table_stats重新统计表,列,索引的统计信息(默认参数下是对表进行直方图信息收集,包含该表的自身-表的行数、数据块数、行长等信息;列的分析--列值的重复数、列上的空值、数据在列上的分布情况;索引的分析-索引页块的数量、索引的深度、索引聚合因子)。
 
收集sql语句的执行计划参考1.4.6章节
语法
[语法如下]:
dbms_stats.gather_table_stats (ownname varchar2,tabname varchar2,
partname varchar2,estimate_percent number,block_sample boolean,
method_opt varchar2,degree  number,granularity varchar2,
cascade boolean,stattab varchar2,statid varchar2, statown varchar2,no_invalidate 
boolean,force boolean);
[参数说明]:
ownname:要分析表的拥有者
tabname:要分析的表名.
partname:分区的名字,只对分区表或分区索引有用.
estimate_percent:采样行的百分比,取值范围[0.000001,100],null为全部分析,不采样. 常量:DBMS_STATS.AUTO_SAMPLE_SIZE是默认值,由oracle决定最佳取采样值.
block_sapmple:是否用块采样代替行采样.
0 0
原创粉丝点击