达梦统计信息收集

一 统计信息分类
表统计信息、列统计信息、索引统计信息。

统计信息生成过程分以下三个步骤:

1) 表:计算表的行数、所占的页数目、平均记录长度

2) 列:统计列数据的分布情况

3) 索引:统计索引列的数据分布情况

二 统计信息收集范围
全库
对库上所有模式下的所有用户表以及表上的所有索引生成统计信息,如下:

CALL SP_DB_STAT_INIT ();

模式
一般在首次迁移完成后使用,如下:

DBMS_STATS.GATHER_SCHEMA_STATS(‘模式名’,100,TRUE,‘FOR ALL COLUMNS SIZE AUTO’);


CALL SP_TAB_STAT_INIT (‘模式名’, ‘表名’);

DBMS_STATS.GATHER_TABLE_STATS(‘模式名’, ‘表名’,null,100,TRUE,‘FOR ALL COLUMNS SIZE AUTO’);


对某个表上所有的列生成统计信息

CALL SP_TAB_COL_STAT_INIT (‘模式名’, ‘表名’);

CALL SP_STAT_ON_TABLE_COLS (‘模式名’,‘表名’,采样率);–采样率0-100

DBMS_STATS.GATHER_TABLE_STATS(USER, ‘表名’,null,100,false, ‘FOR ALL COLUMNS SIZE AUTO’); --更新所有列

对指定的列生成统计信息

CALL SP_COL_STAT_INIT (‘模式名’, ‘表名’, ‘列名’);

SP_COL_STAT_INIT_EX(USER,‘表名’,‘列名’,100); --更新单列

索引
收集某张表的所有索引的统计信息

CALL SP_TAB_INDEX_STAT_INIT (‘模式名’, ‘表名’);

对指定的索引生成统计信息

DBMS_STATS.GATHER_INDEX_STATS(user,‘索引名’);

CALL SP_INDEX_STAT_INIT (‘模式名’, ‘索引名’);

CALL SP_INDEX_STAT_INIT(USER,‘索引名’);

语句
对SQL语句涉及的所有表和过滤列生成统计信息

CALL SP_SQL_STAT_INIT (‘SQL’);

三 查看统计信息

查看指定列的统计信息

DBMS_STATS.COLUMN_STATS_SHOW(USER, ‘表名’,‘列名’);

查看指定索引的统计信息

dbms_stats.index_stats_show(user,‘索引名’);

查看最后统计收集时间
select table_name,num_rows,blocks,last_analyzed from user_tables where table_name=‘T2’;

https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值