Home >Database >Mysql Tutorial > 管理Oracle统计信息

管理Oracle统计信息

WBOY
WBOYOriginal
2016-06-07 17:41:221036browse

在CBO(基于代价的优化器模式)条件下,SQL语句的执行计划由统计信息来决定,若没有统计信息则会采取动态采样的方式决定执行计划!可以说统计信息关乎sql的执行计

 在CBO(基于代价的优化器模式)条件下,SQL语句的执行计划由统计信息来决定,若没有统计信息则会采取动态采样的方式决定执行计划!可以说统计信息关乎sql的执行计划是否正确,属于sql执行的指导思想,oracle的初始化参数statistics_level控制收集统计信息的级别,有三个参数值:

BASIC :收集基本的统计信息

TYPICAL:收集大部分统计信息(数据库的默认设置)

ALL:收集全部统计信息

 

统计信息包含:

行统计信息(user_tables):行数(NUM_ROWS),块数(BLOCKS),行平均长度(AVG_ROW_LEN);

列统计信息(user_tab_columns):列中唯一值的数量(NUM_DISTINCT),NULL值的数量(NUM_NULLS),数据分布(HISTOGRAM);         

索引统计(user_index):--叶块数量(LEAF_BLOCKS),等级(BLEVEL),聚簇因子(CLUSTERING_FACTOR);

 

统计信息的收集时间由时间窗口来调度!

 一:10g关闭自动收集统计信息任务

二:11g关闭自动收集统计信息任务

查询

三:手动收集统计信息,采样10%,免备案空间,香港服务器,并行度为8,METHOD_OPT选项代表收集index列分布情况,并生成直方图

四:查看表或索引的统计信息

五:导出统计信息

六:删除统计信息

七:导入统计信息

八:异机导入,首先需要将HR_STAT_BAK表通过expdp/impdp方式导入到其他oracle服务器上

九:锁定与解锁统计信息

 

 

本文出自 “斩月” 博客,谢绝转载!

,香港空间
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn