手机
当前位置:查字典教程网 >编程开发 >Oracle教程 >Oracle中查看表空间使用率的SQL脚本分享
Oracle中查看表空间使用率的SQL脚本分享
摘要:复制代码代码如下:/*Formattedon2012/5/3114:51:13(QP5v5.185.11230.41888)*/SELECT...

复制代码 代码如下:

/* Formatted on 2012/5/31 14:51:13 (QP5 v5.185.11230.41888) */

SELECT D.TABLESPACE_NAME,

SPACE || 'M' "SUM_SPACE(M)",

BLOCKS "SUM_BLOCKS",

SPACE - NVL (FREE_SPACE, 0) || 'M' "USED_SPACE(M)",

ROUND ( (1 - NVL (FREE_SPACE, 0) / SPACE) * 100, 2) || '%'

"USED_RATE(%)",

FREE_SPACE || 'M' "FREE_SPACE(M)"

FROM ( SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE,

SUM (BLOCKS) BLOCKS

FROM DBA_DATA_FILES

GROUP BY TABLESPACE_NAME) D,

( SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / (1024 * 1024), 2) FREE_SPACE

FROM DBA_FREE_SPACE

GROUP BY TABLESPACE_NAME) F

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)

UNION ALL --如果有临时表空间

SELECT D.TABLESPACE_NAME,

SPACE || 'M' "SUM_SPACE(M)",

BLOCKS SUM_BLOCKS,

USED_SPACE || 'M' "USED_SPACE(M)",

ROUND (NVL (USED_SPACE, 0) / SPACE * 100, 2) || '%' "USED_RATE(%)",

NVL (FREE_SPACE, 0) || 'M' "FREE_SPACE(M)"

FROM ( SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE,

SUM (BLOCKS) BLOCKS

FROM DBA_TEMP_FILES

GROUP BY TABLESPACE_NAME) D,

( SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES_USED) / (1024 * 1024), 2) USED_SPACE,

ROUND (SUM (BYTES_FREE) / (1024 * 1024), 2) FREE_SPACE

FROM V$TEMP_SPACE_HEADER

GROUP BY TABLESPACE_NAME) F

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)

ORDER BY 1;

效果如下:

Oracle中查看表空间使用率的SQL脚本分享1

【Oracle中查看表空间使用率的SQL脚本分享】相关文章:

oracle中的decode的使用介绍

oracle中动态SQL使用详细介绍

oracle查看字符集和修改字符集使用详解

Oracle表空间恢复方案

Oracle Form中COMMIT的概述及使用技巧

oracle查看表空间已分配和未分配空间的语句分享

Oracle中使用同义词

Oracle表空间管理

oracle之查询某个表上的触发器

Oracle约束管理脚本

精品推荐
分类导航