WEB开发网
开发学院数据库Oracle ORACLE数据库的统计数据及其生成方式 阅读

ORACLE数据库的统计数据及其生成方式

 2007-05-09 12:12:10 来源:WEB开发网   
核心提示: 例如,对 SCOTT 用户的 EMP 表,ORACLE数据库的统计数据及其生成方式(3),进行 50% 的抽样分析,参数如下:DBMS_DDL.ANALYZE_OBJECT('TABLE', 'SCOTT', 'EMP', 'ESTI

例如,对 SCOTT 用户的 EMP 表,进行 50% 的抽样分析,参数如下:

DBMS_DDL.ANALYZE_OBJECT('TABLE', 'SCOTT', 'EMP', 'ESTIMATE', NULL,50);

2)

DBMS_UTILITY.ANALYZE_SCHEMA (
SCHEMA VARCHAR2,
METHOD VARCHAR2,
ESTIMATE_ROWS NUMBER DEFAULT NULL,
ESTIMATE_PERCENT NUMBER DEFAULT NULL,
METHOD_OPT VARCHAR2 DEFAULT NULL ) ;
DBMS_UTILITY.ANALYZE_DATABASE (
METHOD VARCHAR2,
ESTIMATE_ROWS NUMBER DEFAULT NULL,
ESTIMATE_PERCENT NUMBER DEFAULT NULL,
METHOD_OPT VARCHAR2 DEFAULT NULL ) ;

其中, ANALYZE_SCHEMA 用于对某个用户拥有的所有 TABLE , INDEX 和 CLUSTER 的分析统计。

ANALYZE_DATABASE 用于对整个数据库进行分析统计。

3) DBMS_STATS 是在 ORACLE8I 中新增的程序包,它使统计数据的生成和处理更加灵活方便,并且可以并行方式生成统计数据。在程序包中的以下过程分别分析统计 TABLE , INDEX , SCHEMA , DATABASE 级别的信息。

DBMS_STATS.GATHER_TABLE_STATS

DBMS_STATS.GATHER_INDEX_STATS

DBMS_STATS.GATHER_SCHEMA_STATS

DBMS_STATS.GATHER_DATABASE_STATS

在这里,我们以数据库 JOB 的方式,定时对数据库中 SCOTT 模式下所有的表和索引进行分析:

在 SQL*PLUS 下运行:

VARIABLE jobno number;
BEGIN
DBMS_JOBS.SUBMIT ( :jobno ,
' dbms_utility.analyze_schema ( "scott", "estimate", NULL, 20) ; ',
sysdate, 'sysdate+30');
commit;
end;
/
Statement processed.
Print jobno
JOBNO
-------------
16

以上作业,每隔一个月用 DBMS_UTILITY.ANALYZE_SCHEMA 对用户SCOTT 的所有表,簇表和索引作统计分析。

上一页  1 2 3 

Tags:ORACLE 数据库 统计数据

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接