前言
在DBA的日常工作中不可避免的需要对表空间的增长情况有了解,做好及时的扩容等操作,但是就如何更详细的
掌握现有表空间使用情况而言,拥有更好的查询方法对工作效率的提高会有极大的帮助。
DBA_TABLESPACE_USAGE_METRICS数据字典
改数据字典提供了对所有类型的表空间使用情况的描述,包括永久,临时以及UNDO表空间。
如下是19c版本的字段描述:
Column | Datatype | NULL | Description |
---|---|---|---|
TABLESPACE_NAME | VARCHAR2(30) | Tablespace name | |
USED_SPACE | NUMBER | Total space consumed by all objects created in the tablespace, expressed as number of data blocks | |
TABLESPACE_SIZE | NUMBER | The maximum size of the tablespace, expressed as number of data blocks | |
USED_PERCENT | NUMBER | Percentage of used space, as a function of the maximum possible tablespace size |
查询SQL
select tablespace_name,
round((used_space*8/1024/1024),2) as "USED GB",
round(((tablespace_size*8/1024/1024)-(used_space*8/1024/1024)),2) as "FREE GB",
round(used_percent,2) "used_percentage"
from dba_tablespace_usage_metrics;
可以看到该数据字典提供了表空间最大可以空间的数据统计(包括未分配的),这就需要我们对主机的存储具有一定了解,谨防存储被占满。