`
wsql
  • 浏览: 11798257 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

dba_tables 和 dba_segments 表中 blocks 的区别

 
阅读更多

创建测试表:

SQL>createtablet5(idint);
表已创建。
SQL>insertintot5values(1);
已创建1行。
SQL>insertintot5values(2);
已创建1行。
SQL>insertintot5values(3);
已创建1行。
SQL>insertintot5values(4);
已创建1行。
SQL>commit;
提交完成。

多插入一点数据:
SQL>begin
2foriin1..1000loop
3insertintoT5values(10000);
4commit;
5endloop;
6end;
7/


分析表

SQL>analyzetableT5computestatistics;

表已分析。

说明:

为什么要收集统计信息,因为dba_tables 中的blocks 是只有收集统计信息以后才有值,而且对于empty_blocks 参数,还必须使用analyze 分析之后才有值。 如果使用dbms_stats.gather_table_stats收集,只能收集到blocks的值,empty_blocks 收集不到。

有关统计信息,参考我的Blog:

Oracle Statistic 统计信息 小结

http://blog.csdn.net/xujinyang/article/details/6881672

查看dba_segmentsDBA_TABLES表中blocks值:

SQL>selectsegment_name,blocks,extents,bytes,segment_type,tablespace_namefrom

dba_segmentswheresegment_name='T5';

SEGMEBLOCKSEXTENTSBYTESSEGMENT_TYPETABLESPACE_NAME

---------------------------------------------------------------------------

T565286653477376TABLESYSTEM

SQL>selectblocks,empty_blocksfromdba_tableswheretable_name='T5';

BLOCKSEMPTY_BLOCKS

----------------------

644978

从上面的结果看以看出:

6528=6449+78+1

即:

Dba_Segments.blocks=Dba_Tables.Blocks+Dba_Tables.Empty_Blocks+1segmentheaderblock

这个多加的1是,是segmentheaderblock.

如果查询的结果不是这样,可能是你没有分析表。不妨分析表之后在查一下看看。

这两张表对blocks的定义也不一样:

DBA_SEGMENTS.BLOCKSholdsthetotalnumberofblocksallocatedtothetable.

USER_TABLES.BLOCKSholdsthetotalnumberofblocksallocatedfordata.

------------------------------------------------------------------------------

分享到:
评论

相关推荐

    Oracle 常用系统表

    DBA_TABLES、ALL_TABLES和USER_TABLES显示了有关数据库表的一般信息。 DBA_TAB_COLUMNS、ALL_TAB_COLUMNS和USER_TAB_COLUMNS显示了每个数据库表的列的信息。 注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示...

    Oracle10g DBA经常使用的动态性能视图和数据字典

    dba_tables:数据库中所有数据表的描述 dba_tabespaces:关于表空间的信息 dba_tab_columns:所有表描述、视图以及聚集的列 dba_tab_grants/privs:对象所授予的权限 dba_ts_quotas:所有用户表空间限额 dba_users:关于...

    oracle常用表和视图

    dba_users 数据库用户信息 dba_segments 表段信息 dba_extents 数据区信息 dba_objects 数据库对象信息

    oracle 10g问题总结

     查看当前用户的系统权限和表级权限  select * from user_sys_privs  select * from user_tab_privs  查看用户下所有的表  select * from user_tables  显示用户信息(所属表空间)  select default_...

    Oracle常用问题1000问

    select * from user_tables中有个字段TABLESPACE_NAME,(oracle); select * from dba_segments where …; desc user_tables; select tablespace_name from user_tables where table_name='s_emp'; 55. 怎么...

    ORACLE精品脚本笔记

    <br>create or replace view ts_blocks_v as select tablespace_name,block_id,bytes,blocks,'free space' segment_name from dba_free_space union all select tablespace_name,block_id,bytes,...

    ORACLE数据库基础知识-华为维护资料

    5.1.3 dba_segments(user_segments) 58 5.1.4 dba_rollback_segs 59 5.1.5 dba_extents 59 5.1.6 dba_free_spaces 59 5.2 数据字典与视图表 59 第6章 SQL语言运算符与函数 66 6.1 各种运算符列表 66 6.2 字符函数...

    LCD.rar_Different_bias_lcd segments_富士通_富士通单片机

    富士通单片机MB902420系列The internal LCD-cotroller will be initialised (1/2 bias, 1/2 duty). The internal Resistor devider is used...Some different methods are shown, how segments can be swicthed on/off.

    Oracle基础知识

    , dba_segments b , v$rollname c , v$rollstat d WHERE a.segment_name = b.segment_name AND a.segment_name = c.name (+) AND c.usn = d.usn (+) ORDER BY a.segment_name; 4、查看控制文件 ...

    达梦数据库常用系统视图及查询语句.pdf

    9、查询数据表所分配的空间⼤⼩,辅助查询表⽤户使⽤情况 select OWNER,TABLESPACE_NAME,SEGMENT_TYPE,SEGMENT_NAME,BLOCKS,BYTES/1024/1024 FROM DBA_SEGMENTS ORDER BY OWNER,SE GMENT_NAME; 10、查询表索引状态...

    orcale常用命令

    例:表删除将同时删除表的数据和表的定义 sql>drop table test c、表空间的创建、删除 六、ORACLE逻辑备份的SH文件 完全备份的SH文件:exp_comp.sh rq=` date +"%m%d" ` su - oracle -c "exp system/manager ...

    word源码java-Chinese_word_segmenter:Chinese_word_segments

    word源码java 中文分词器 主要用于中法创研中心的“文本情感分析器——多功能应用接口” 该中文分词器基于word分词器 用途特点 中文分词 可排除停止词 多种分词算法 支持分布式 词性标注 同义、反义、拼音标注 ...

    Oracle ERP_EBS常用表表名

    * fnd_id_flex_segments where id_flex_code=""GL#"" and id_flex_num=50671 * fnd_profile_options_vl * fnd_concurrent_programs 法度表 * fnd_concurrent_requests 恳求表 * fnd_concurrent_processes 过程表 --...

    PyPI 官网下载 | ligo_segments-1.0.1-cp35-cp35m-manylinux1_x86_64.whl

    资源来自pypi官网。 资源全名:ligo_segments-1.0.1-cp35-cp35m-manylinux1_x86_64.whl

    最全的oracle常用命令大全.txt

    例:表删除将同时删除表的数据和表的定义 sql>drop table test c、表空间的创建、删除 六、ORACLE逻辑备份的SH文件 完全备份的SH文件:exp_comp.sh rq=` date +"%m%d" ` su - oracle -c "exp system/manager ...

    System表空间不足的报警问题浅析

    废话不多说了,具体代码如下所示: ... from dba_segments where tablespace_name = 'SYSTEM' group by owner, segment_name, segment_type having sum(bytes)/1024/1024 >= 20 order by space_m desc ; 4 5

    Oracle数据文件收缩实例.doc

    Oracle的全局索引也存储在dba_segments中,并以index标志,而且其重建方式跟普通索引一致,所以在执行忘回导入的时候需要按照move 普通表;move分区表;move全局索引;move分区索引;move lob对象的顺序进行。

    RMAN测试演练即讲解

    (5) 进入rman使用restore和recover恢复表空间 restore tablespace apollo_data; recover tablespace apollo_data; 备注:从(4)、(5)开始的执行都没有成功,因为drop表空间后即使在系统表里 面也不再有改表...

    oracle DBA日常脚本

    脚本目录 Constriants ...........\Disable_Chk.sql ... ..........\Temp_Segments.sql ..........\Top_SQL.sql ..........\TS_Extent_Map.sql ..........\TS_Full.sql ..........\Tuning.sql

Global site tag (gtag.js) - Google Analytics