DBMS_STATS
功能描述
GaussDB 100提供的用于优化统计信息的包。
接口介绍
- DBMS_STATS.AUTO_DEGREE
描述:获取缺省并发数。
接口:
DBMS_STATS.AUTO_DEGREE
- DBMS_STATS.AUTO_SAMPLE_SIZE
描述:获取缺省采样比例。
接口:
DBMS_STATS.AUTO_SAMPLE_SIZE
- DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO
描述:刷新系统的监控信息。
接口:
DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO();
- 权限控制:
SYS用户和DBA可以调用此接口,具备ANALYZE ANY系统权限可以调用此接口。
- DBMS_STATS.GATHER_TABLE_STATS
描述:收集指定表的统计信息。
接口:
DBMS_STATS.GATHER_TABLE_STATS ( ownname VARCHAR2, tabname VARCHAR2, partname VARCHAR2 DEFAULT NULL, estimate_percent NUMBER DEFAULT 10, block_sample BOOLEAN DEFAULT TRUE, method_opt VARCHAR2 DEFAULT NULL, degree NUMBER DEFAULT NULL, granularity VARCHAR2 DEFAULT NULL, cascade BOOLEAN DEFAULT NULL, stattab VARCHAR2 DEFAULT NULL, statid VARCHAR2 DEFAULT NULL, statown VARCHAR2 DEFAULT NULL, no_invalidate BOOLEAN DEFAULT NULL, stattype VARCHAR2 DEFAULT NULL, force BOOLEAN DEFAULT NULL);
参数:
- ownname,待收集统计信息的用户名。
- tabname,待收集统计信息的表名。
- estimate_percent,采样率,范围为[0.000001,100]。如果为0的话将由系统自己选择采样方法,目前采样大小是128MB。
- block_sample,true块采样,false行采样,目前固定为块采样。
- method_opt,收集统计信息范围选项。支持FOR ALL COLUMNS收集所有列的统计信息,FOR ALL INDEXED COLUMNS只收集索引列的统计信息,默认是收集所有列的统计信息。
其它参数为可选参数,兼容语法,暂不生效。
权限控制:
- SYS用户和DBA可以收集、删除所有对象的统计信息,普通用户只能收集、删除自己的表。
- 具备ANALYZE ANY权限可操作除SYS外所有用户的统计信息
- DBMS_STATS.GATHER_SCHEMA_STATS
描述:收集指定用户的统计信息,不统计系统表,临时表,回收站里的表的统计信息。
接口:
DBMS_STATS.GATHER_SCHEMA_STATS ( ownname VARCHAR2, estimate_percent NUMBER DEFAULT 10, block_sample BOOLEAN DEFAULT TRUE, method_opt VARCHAR2 DEFAULT NULL, degree NUMBER DEFAULT NULL, granularity VARCHAR2 DEFAULT NULL, cascade BOOLEAN DEFAULT NULL, stattab VARCHAR2 DEFAULT NULL, statid VARCHAR2 DEFAULT NULL, options VARCHAR2 DEFAULT NULL, statown VARCHAR2 DEFAULT NULL, no_invalidate BOOLEAN DEFAULT NULL, force BOOLEAN DEFAULT NULL, obj_filter_list ObjectTab DEFAULT NULL);
参数:
- ownname,待收集统计信息的用户名。
- estimate_percent, 采样率,范围为[0.000001,100],如果为0的话将由系统自己选择采样方法,目前采样大小是128MB。
- block_sample, true块采样,false行采样,目前固定为块采样。
- method_opt,收集统计信息范围选项。支持FOR ALL COLUMNS收集所有列的统计信息,FOR ALL INDEXED COLUMNS只收集索引列的统计信息,默认是收集所有列的统计信息。
其它参数暂为可选参数,兼容语法,暂不生效。
权限控制:
- SYS用户和DBA可以收集、删除所有对象的统计信息,普通用户只能收集、删除自己的表。
- 具备ANALYZE ANY权限可操作除SYS外所有用户的统计信息。
- DBMS_STATS.PURGE_STATS
描述:按指定时间清除字典中保存的旧版本的统计信息。
接口:
DBMS_STATS.PURGE_STATS(before_timestamp TIMESTAMP );
参数:before_timestamp,清除在此时间戳之前保存的统计版本。
权限控制:
只有SYS用户和DBA可以调用此接口。
- DBMS_STATS.DELETE_TABLE_STATS
描述:删除指定表的统计信息。
接口:
DBMS_STATS.DELETE_TABLE_STATS ( ownname VARCHAR2, tabname VARCHAR2, partname VARCHAR2 DEFAULT NULL, stattab VARCHAR2 DEFAULT NULL, statid VARCHAR2 DEFAULT NULL, cascade_parts BOOLEAN DEFAULT TRUE, cascade_columns BOOLEAN DEFAULT TRUE, cascade_indexes BOOLEAN DEFAULT TRUE, statown VARCHAR2 DEFAULT NULL, no_invalidate BOOLEAN , force BOOLEAN DEFAULT FALSE);
参数:
ownname,用户名。
tabname,表名。
其它参数为可选参数,兼容语法,暂不生效。
权限控制:
- SYS用户和DBA可以收集、删除所有对象的统计信息,普通用户只能收集、删除自己的表。
- 具备ANALYZE ANY权限可操作除SYS外所有用户的统计信息。
- DBMS_STATS.DELETE_SCHEMA_STATS
描述:删除指定schema的统计信息。
接口:
DBMS_STATS.DELETE_SCHEMA_STATS ( ownname VARCHAR2, stattab VARCHAR2 DEFAULT NULL, statid VARCHAR2 DEFAULT NULL, statown VARCHAR2 DEFAULT NULL, no_invalidate BOOLEAN DEFAULT FALSE, force BOOLEAN DEFAULT FALSE );
参数:
ownname:用户名。
其它参数为可选参数,兼容语法,暂不生效。
权限控制:
- SYS用户和DBA可以收集、删除所有对象的统计信息,普通用户只能收集、删除自己的表。
- 具备ANALYZE ANY权限可操作除SYS外所有用户的统计信息。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」关注作者【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。评论
- 权限控制:
- DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO
- DBMS_STATS.AUTO_SAMPLE_SIZE