脚本一 表空间利用率

SELECT d.status "Status",
d.tablespace_name "Name",
d.contents "Type",
d.extent_management "Extent Management",
to_char(nvl(a.bytes / 1024 / 1024, 0), '99,999,990.900') "Size (M)",
to_char(nvl(a.bytes - nvl(f.bytes, 0), 0) / 1024 / 1024,'99999999.999') || '/' ||
to_char(nvl(a.bytes / 1024 / 1024, 0), '99999999.999') "Used (M)",
to_char(nvl((a.bytes - nvl(f.bytes, 0)) / a.bytes * 100, 0),'990.00') "Used %"
FROM sys.dba_tablespaces d,
(SELECT tablespace_name, SUM(bytes) bytes
FROM dba_data_files
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) bytes
FROM dba_free_space
GROUP BY tablespace_name) f
WHERE d.tablespace_name = a.tablespace_name(+)
AND d.tablespace_name = f.tablespace_name(+)
AND NOT
(d.extent_management LIKE 'LOCAL' AND d.contents LIKE 'TEMPORARY')
UNION ALL
SELECT d.status "Status",
d.tablespace_name "Name",
d.contents "Type",
d.extent_management "Extent Management",
to_char(nvl(a.bytes / 1024 / 1024, 0),  '99,999,990.900') "Size (M)",
to_char(nvl(t.bytes, 0) / 1024 / 1024, '99999999.999') || '/' ||
to_char(nvl(a.bytes / 1024 / 1024, 0), '99999999.999') "Used (M)",
to_char(nvl(t.bytes / a.bytes * 100, 0), '990.00') "Used %"
FROM sys.dba_tablespaces d,
(SELECT tablespace_name, SUM(bytes) bytes
FROM dba_temp_files
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes_cached) bytes
FROM v$temp_extent_pool
GROUP BY tablespace_name) t
WHERE d.tablespace_name = a.tablespace_name(+)
AND d.tablespace_name = t.tablespace_name(+)
AND d.extent_management LIKE 'LOCAL'
AND d.contents LIKE 'TEMPORARY'
ORDER BY "Used %" DESC;
 
结果如下
Status    Name                           Type      Extent Man Size (M)
--------- ------------------------------ --------- ---------- ---------------
Used (M)                    Used %
--------------------------- -------
ONLINE    USERS                          PERMANENT LOCAL            2,083.750
     2078.438/     2083.750   99.75
ONLINE    SYSTEM                         PERMANENT LOCAL              740.000
      721.313/      740.000   97.47
ONLINE    SYSAUX                         PERMANENT LOCAL              270.000
      261.500/      270.000   96.85
ONLINE    TEMP                           TEMPORARY LOCAL               20.000
       18.000/       20.000   90.00
ONLINE    UNDOTBS1                       UNDO      LOCAL              675.000
      298.313/      675.000   44.19
ONLINE    EXAMPLE                        PERMANENT LOCAL              200.000
       77.750/      200.000   38.88
 
二、
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;
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9537053/viewspace-752534/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9537053/viewspace-752534/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值