Oracle查询表空间使用情况

Oracle查询表空间使用情况

可用根据DBA_DATA_FILES 和 DBA_FREE_SPACE两个视图来查询

  • DBA_FREE_SPACE :字段BYTES,表示该表空间 `已用空间`

  • DBA_DATA_FILES :字段BYTES, 表示该表空间 `当前可使用的总空间`

  • DBA_DATA_FILES :字段MAXBYTES, 表示该表空间 `当前可扩展到的最大空间`

```sql

SELECT TOTAL.TABLESPACE_NAME AS 表空间名,

ROUND(TOTAL.MB - FREE.MB, 2) || ' MB' AS 当前已用空间,

ROUND(FREE.MB, 2) || ' MB' AS 当前可用空间,

ROUND(TOTAL.MB, 2) || ' MB' AS 当前可用的总空间,

ROUND((1 - FREE.MB / TOTAL.MB) * 100, 2) || '%' AS 当前使用百分比,

ROUND(TOTAL.MAX_MB, 2) || ' MB' AS 可扩展到的最大空间,

DECODE(TOTAL.MAX_MB, 0, 0, ROUND(TOTAL.MAX_MB - TOTAL.MB, 2)) ||

' MB' AS 剩余可扩展的空间,

DECODE(TOTAL.MAX_MB,

0,

0,

ROUND((1 - TOTAL.MB / TOTAL.MAX_MB) * 100, 2)) || '%' AS 剩余可扩展的百分比,

ROUND(TOTAL.MAX_MB - FREE.MB, 2) || ' MB' AS 剩余可用的最大空间

FROM (SELECT TABLESPACE_NAME, SUM(BYTES) / 1024 / 1024 AS MB

FROM DBA_FREE_SPACE

GROUP BY TABLESPACE_NAME) FREE,

(SELECT TABLESPACE_NAME,

SUM(BYTES) / 1024 / 1024 AS MB,

SUM(MAXBYTES) / 1024 / 1024 AS MAX_MB

FROM DBA_DATA_FILES

GROUP BY TABLESPACE_NAME) TOTAL

WHERE FREE.TABLESPACE_NAME = TOTAL.TABLESPACE_NAME

ORDER BY TOTAL.TABLESPACE_NAME

```

相关推荐
开开心心就好7 天前
内存清理软件灵活设置,自动阈值快捷键清
运维·服务器·windows·pdf·harmonyos·risc-v·1024程序员节
学传打活9 天前
【边打字.边学昆仑正义文化】_5_宇宙物种创造简史(1)
微信公众平台·1024程序员节·汉字·昆伦正义文化
xcLeigh10 天前
打破机房围墙:VMware+cpolar构建跨网络虚拟实验室
vmware·内网穿透·cpolar·实验室·远程访问·1024程序员节
开开心心就好11 天前
免费轻量电子书阅读器,多系统记笔记听书
linux·运维·服务器·安全·ddos·可信计算技术·1024程序员节
unable code12 天前
流量包取证-大流量分析
网络安全·ctf·misc·1024程序员节·流量包取证
开开心心就好12 天前
实用PDF擦除隐藏信息工具,空白处理需留意
运维·服务器·windows·pdf·迭代器模式·桥接模式·1024程序员节
unable code13 天前
浏览器取证-[GKCTF 2021]FireFox Forensics
网络安全·ctf·misc·1024程序员节·浏览器取证
unable code13 天前
内存取证-[安洵杯 2019]Attack
网络安全·ctf·misc·1024程序员节·内存取证
unable code14 天前
CTF-SPCS-Forensics
网络安全·ctf·misc·1024程序员节·取证