BLOBS表空间数据查询

查看数据库表空间使用情况:

select a.tablespace_name tnm,b.FILE_PATH,--b.autoextensible,
       b.cnt,
       trunc(a.bytes/1024/1024/1024) total_G,
       trunc(a.bytes/1024/1024/1024/b.cnt) avg_G,
       trunc(c.bytes/1024/1024/1024) free_G,
       trunc((a.bytes-c.bytes)*100/a.bytes,2) used--,(c.bytes*100)/a.bytes "% FREE"
     from SYS.SM$TS_AVAIL A,SYS.SM$TS_FREE C,
         (select tablespace_name,substr(file_name,1,instr(file_name,'/',2)) FILE_PATH, --f.autoextensible,
         count(*) cnt 
          from dba_data_files  f group by 
tablespace_name,substr(file_name,1,instr(file_name,'/',2))--,autoextensible
          ) b
     WHERE  A.TABLESPACE_NAME=C.TABLESPACE_NAME(+)
          AND A.TABLESPACE_NAME=B.TABLESPACE_NAME
       --   AND A.TABLESPACE_NAME IN (select distinct tablespace_name from dba_tablespaces)
          order by  avg_g desc;

结果如下:
在这里插入图片描述
可见,BLOBS表空间空存放了166G数据。

查看BLOBS表空间中存放的数据

先查看有哪些表:

select table_name from dba_tables where tablespace_name = 'BLOBS';

无输出结果,说明该表空间中并未存放表。

查看存放哪些段:

select SEGMENT_NAME from DBA_SEGMENTS where TABLESPACE_NAME='BLOBS'

输出338条记录,说明BLOB数据以段的形式存放在BLOBS表空间中。

查看这些段的大小:

select SUM(a.BYTES/1024/1024) "Size" from DBA_SEGMENTS a where TABLESPACE_NAME='BLOBS'

输出结果如下,共166G数据。
在这里插入图片描述

说明:
BLOB、CLOB、和 NCLOB:它们在数据库中要么存储在表中,要么存储在单独的段或表空间中。
BLOB 能够存储大容量的二进制数据,典型例子有图形图像和照片。
CLOB 能够存储大容量的字符数据,而且对于存储非结构化的 XML 文档很有用。
NCLOB:由对应于为 Oracle 数据库定义的本地字符集的字符数据组成。

Guess you like

Origin blog.csdn.net/Ruishine/article/details/121140773