DBA_SEGMENTS - 查看数据库对象所分配的物理存储空间

如何查看某个数据库对象(TABLE, INDEX ....)所占得物理存储空间

SELECT SEGMENT_NAME,SEGMENT_TYPE,TABLESPACE_NAME,EXTENTS,BLOCKS,BYTES/1024/1024/1024 GB
FROM DBA_SEGMENTS 
WHERE SEGMENT_NAME = Upper('MTL_MATERIAL_TRANSACTIONS');


Oracle逻辑结构全景结构图

Oracle 逻辑结构的相关数据字典:

SELECT * FROM DBA_TABLESPACES -- 记录各个表空间的详细信息
SELECT * FROM DBA_TABLESPACE_USAGE_METRICS -- 记录各个表空间的使用状况
SELECT * FROM DBA_DATA_FILES -- 记录各个数据文件的详细信息
SELECT * FROM DBA_SEGMENTS -- 记录各个段的详细信息,与 DBA_TABLES,DBA_INDEXES,DBA_LOBS,DBA_PART_TABLES,DBA_PART_INDEXES,DBA_PART_LOBS,DBA_OBJECTS 搭配使用
SELECT * FROM DBA_LOBS    --BLOB 字段所对应的字段名称
SELECT * FROM DBA_INDEXES -- 分区索引需要通过 DBA_INDEXS 来找到对应的表名
SELECT * FROM DBA_EXTENTS -- 记录各个区间对象的详细信息 

Question: What is the difference between dba_segments and dba_tables?
Answer: The dba_tables view describes a "logical" structure while dba_segments describes the "physical" data segment, like a data file.
Also, columns like "blocks" are different between dba_tables and dba_segments. In dba_tables, the "blocks" are calculated when you run dbms_stats, while in dba_segments, "blocks" is the actual number of blocks used by the object on disk.


Reference:http://baoqiangwang.blog.51cto.com/1554549/312705

http://dba-oracle.com/t_difference_dba_tables_dba_segments.htm


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值