oracle下查看表、索引、分区表用空间大小

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle下查看表、索引、分区表用空间大小相关的知识,希望对你有一定的参考价值。

参考技术A 0、查看用户表、索引、分区表占用空间

select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments group by segment_name;

1、表占用空间

select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments where segment_type='TABLE' group by segment_name;

2、索引占用空间select segment_name ,sum(bytes)/1024/1024 from user_segments where segment_type ='INDEX' group by segment_name;

3、分区表TABLE PARTITION占用空间

select segment_name,sum(bytes)/1024/1024 Mbytes from user_segments where segment_type='TABLE PARTITION' group by segment_name;

oracle查看索引表空间的使用情况

参考技术A 这个问题根据断句的不同有两种可能:
(1)索引 ——表空间的使用情况,我知道数据库本身没有索引表空间,但是如果我自己建立了一个表空间,通俗名称叫做索引表空间呢?所以有索引表空间还是有可能的,只是可能性不大。
基本上查询dba_free_space就能查到表空间的剩余量,如果非要查询用了百分之多少之类的,这张表经过计算就能得到。如果不想查这张表,也可以通过sys.sm$ts_avail, sys.sm$ts_used 和 sys.sm$ts_free 三张表联合查询得到。
(2)索引表——空间的使用情况,也就是说查的是索引占用的空间的情况,这种可能性更大一点。
dba_serments里面存有相关数据,其中bytes就是段的大小,如果指定segment_type='INDEX'那么你查出的内容就是索引,每一行对应的bytes就是索引占用的字节数,除以1024的结果就是兆(MB)了,如果求所有的索引总共表空间的使用情况,那么sum一下就可以了。

以上是关于oracle下查看表、索引、分区表用空间大小的主要内容,如果未能解决你的问题,请参考以下文章

mysql进行分区之后所占的空间是否会变更大?

记一次Oracle分区表全局索引重建的过程

记一次Oracle分区表全局索引重建的过程

Oracle大表改为分区表及表空间切换方案

转 关于oracle 分区表 表空间以及索引的总结

oracle查看索引表空间的使用情况