签到成功

知道了

CNDBA社区CNDBA社区

Oracle 19c统计信息

2021-10-13 22:32 1221 0 原创 oracle
作者: hbhe0316
declare
  i number;
  begin
  for i in 1..30000000 loop
   insert into t1 values(i,'name');
  end loop;
  commit;
  end;
  /

SQL> select count(*) from t1;

  COUNT(*)
----------
  30000000

SQL> SELECT NUM_ROWS, BLOCKS, EMPTY_BLOCKS, AVG_SPACE, CHAIN_CNT, AVG_ROW_LEN FROM USER_TAB_STATISTICS WHERE TABLE_NAME = 'T1';

  NUM_ROWS     BLOCKS EMPTY_BLOCKS  AVG_SPACE  CHAIN_CNT AVG_ROW_LEN
---------- ---------- ------------ ---------- ---------- -----------


SQL> CREATE INDEX index1 ON t1(id);

Index created.

SQL> SELECT NUM_ROWS, BLOCKS, EMPTY_BLOCKS, AVG_SPACE, CHAIN_CNT, AVG_ROW_LEN FROM USER_TAB_STATISTICS WHERE TABLE_NAME = 'T1';

  NUM_ROWS     BLOCKS EMPTY_BLOCKS  AVG_SPACE  CHAIN_CNT AVG_ROW_LEN
---------- ---------- ------------ ---------- ---------- -----------


SQL> exec dbms_stats.gather_table_stats(ownname=>'SYS',tabname=>'T1',estimate_percent=>10,method_opt=>'for all indexed columns');

PL/SQL procedure successfully completed.


 SQL> select table_name,num_rows,blocks,last_analyzed from user_tables where table_name='T1';

TABLE_NAME
--------------------------------------------------------------------------------
  NUM_ROWS     BLOCKS LAST_ANALYZED
---------- ---------- ------------------
T1
  30000000      65945 2021:10:1322:00:11

对hbhe schema下所有的table做统计信息收集http://www.cndba.cn/hbhe0316/article/4926http://www.cndba.cn/hbhe0316/article/4926http://www.cndba.cn/hbhe0316/article/4926http://www.cndba.cn/hbhe0316/article/4926

SQL > exec dbms_stats.gather_schema_stats(hbhe);

PL/SQL procedure successfully completed.

对sys下的Index1索引做统计信息收集http://www.cndba.cn/hbhe0316/article/4926

http://www.cndba.cn/hbhe0316/article/4926
http://www.cndba.cn/hbhe0316/article/4926

SQL>  exec dbms_stats.gather_index_stats(ownname => 'sys',indname => 'index1',estimate_percent => '10',degree => '4') ;

PL/SQL procedure successfully completed.

dbms_stats.gather_system_stats 收集系统统计信息
dbms_stats.GATHER_DICTIONARY_STATS: 所有字典对象的统计;
DBMS_STATS.GATHER_DICTIONARY_STATS 其收集所有系统模式的统计

http://www.cndba.cn/hbhe0316/article/4926
http://www.cndba.cn/hbhe0316/article/4926

dbms_stats.delete_table_stats 删除表的统计信息
dbms_stats.delete_index_stats 删除索引的统计信息
dbms_stats.export_table_stats 输出表的统计信息
dbms_stats.create_state_table
dbms_stats.set_table_stats 设置表的统计
dbms_stats.auto_sample_size

http://www.cndba.cn/hbhe0316/article/4926

版权声明:本文为博主原创文章,未经博主允许不得转载。

Linux,oracle

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
hbhe0316

hbhe0316

关注

1.只有承认无知,才能装下新的东西; 2.进步来自一点点滴滴的积累; 3.广博让你更优秀,而专业让你无法替代; 4.挫折和失败能够转换为一种财富。

  • 889
    原创
  • 1
    翻译
  • 13
    转载
  • 24
    评论
  • 访问:1038950次
  • 积分:1523
  • 等级:核心会员
  • 排名:第6名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ