统计表的大小

统计用户表的大小:
SELECT * FROM
(
SELECT SEGMENT_NAME, SUM(BYTES)/1024/1024/1024 G
FROM DBA_SEGMENTS
WHERE OWNER = user
GROUP BY SEGMENT_NAME
ORDER BY 2 DESC
)

统计表空间大小:
select a.tablespace_name,
       a.bytes / 1024 / 1024 "Sum MB",
       (a.bytes - b.bytes) / 1024 / 1024 "used MB",
       b.bytes / 1024 / 1024 "free MB",
       round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "percent_used"
  from (select tablespace_name, sum(bytes) bytes
          from dba_data_files
         group by tablespace_name) a,
       (select tablespace_name, sum(bytes) bytes, max(bytes) largest
          from dba_free_space
         group by tablespace_name) b
where a.tablespace_name = b.tablespace_name
order by ((a.bytes - b.bytes) / a.bytes) desc

查找表空间:
select file_name,
       tablespace_name,
       bytes / 1024 / 1024 "bytes MB",
       maxbytes / 1024 / 1024 "maxbytes MB"
  from dba_data_files
where tablespace_name = '表空间名字';

猜你喜欢

转载自aigo-h.iteye.com/blog/1940937
今日推荐