当前位置:Gxlcms > mysql > 管理Oracle统计信息

管理Oracle统计信息

时间:2021-07-01 10:21:17 帮助过:24人阅读

在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服务器上

九:锁定与解锁统计信息

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

,香港空间

人气教程排行