Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3672146
  • 博文数量: 715
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7745
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(715)

文章存档

2023年(75)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

分类: Oracle

2022-11-01 19:07:45

首先要保障统计信息准确


  1. 收集表的信息:

  2. set timing on
  3. begin
  4. dbms_stats.gather_table_stats(
  5.   ownname =>'&OWN',
  6.   tabname => '&TAB',
  7.   no_invalidate => false,
  8.   degree=>16,
  9.   method_opt=>'for all columns size auto',
  10.   cascade => true
  11. );
  12. end;
  13. /


  14. 估算索引大小:
  15. set serveroutput on
  16. declare
  17.  l_index_ddl varchar2(1000);
  18.  l_used_bytes number;
  19.  l_allocated_bytes number;
  20. begin
  21.  dbms_space.create_index_cost (
  22.  ddl =>'create index idx_t on dbsnmp.T1(NAME) ', --执行的ddl,根据需要修改
  23.  used_bytes => l_used_bytes,
  24.  alloc_bytes => l_allocated_bytes );
  25.  dbms_output.put_line ('used= ' || round(l_used_bytes/1024/1024,1) || 'Mbytes'|| ' allocated= ' || round(l_allocated_bytes/1024/1024,1) || 'Mbytes');
  26. end;
  27. /


最终大小参考 allocated 的值


或者
  1. explain plan for create index idx_t on dbsnmp.t1 (name) ;
  2. select * from table(dbms_xplan.display());

很准确。

阅读(890) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~