查询oracle中表空间使用情况:
SELECT D.TABLESPACE_NAME "表空间名字", D.STATUS "状态",
(A.BYTES / 1024 / 1024) as "总共多少M",
((A.BYTES - DECODE(F.BYTES, NULL, 0, F.BYTES)) / 1024 / 1024) as "已经用了多少M",
(DECODE(F.BYTES, NULL, 0, F.BYTES) / 1024 / 1024) as "剩余多少M",
((A.BYTES - DECODE(F.BYTES, NULL, 0, F.BYTES)) / 1024 / 1024)/(A.BYTES / 1024 / 1024) as "利用率",
DECODE(sign(((A.BYTES - DECODE(F.BYTES, NULL, 0, F.BYTES)) / 1024 / 1024)/(A.BYTES / 1024 / 1024)-0.9),1,'剩余不到10%,请考虑扩表空间','正常') as "温馨提示"
FROM SYS.DBA_TABLESPACES D, SYS.SM$TS_AVAIL A, SYS.SM$TS_FREE F
WHERE D.TABLESPACE_NAME = A.TABLESPACE_NAME
AND F.TABLESPACE_NAME (+) = D.TABLESPACE_NAME;
查看tablespace的所有表的所占的表空间的大小:
Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents t where t.tablespace_name =tablespace_name Group By Segment_Name
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/532823/viewspace-911436/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/532823/viewspace-911436/