怎么查看oracle表空间,剩余大小,表空间利用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么查看oracle表空间,剩余大小,表空间利用相关的知识,希望对你有一定的参考价值。
1、因为oracle运行在Linux系统下,首先,要连接Linux系统。
2、连上后,进行oracle控制台。输入命令: sqlplus / as sysdba;
3、在sql命令行,输入:
SELECT UPPER(F.TABLESPACE_NAME) "表空间名",D.TOT_GROOTTE_MB "表空间大小(M)",D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),'990.99') || '%' "使用比",F.TOTAL_BYTES "空闲空间(M)",F.MAX_BYTES "最大块(M)"
FROM (SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES,
FROM SYS.DBA_FREE_SPACE,GROUP BY TABLESPACE_NAME) F,
(SELECT DD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB,
FROM SYS.DBA_DATA_FILES DD,GROUP BY DD.TABLESPACE_NAME) D,
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME,ORDER BY 1;
4、这样就可以查看到相应结果。 完成效果图。
b.file_name 物理文件名,
b.tablespace_name 表空间,
b.bytes/1024/1024 大小M,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024 已使用M,
substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) 利用率
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_name,b.bytes
order by b.tablespace_name 参考技术B
给个邮箱,我给个oracle工具你用,很简单很方便的帮你解决你的问题:
在我给你的工具中一样使用用户名和密码以normal模式登陆所在的服务数据库,之后在菜单‘管理’项中有‘表空间信息’打开:
参考技术C select * from dba_tablespaces结果返回数据库所有表空间数据 参考技术D select tablespace_name ,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;
select tablespace_name ,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name;
oracle 查看表空间使用情况
查看表空间剩余:
select tablespace_name,sum(bytes)/1024/1024||‘M‘ from dba_free_space group by tablespace_name
查看表空间总大小、使用大小、剩余大小,使用率、剩余率
select a.tablespace_name,a.bytes/1024/1024||‘M‘ total,b.bytes/1024/1024||‘M‘ used,c.bytes/1024/1024||‘M‘ free ,
trunc(b.bytes/a.bytes,2) useded, trunc(c.bytes/a.bytes,2) freeed from sys.sm$ts_avail a,sys.sm$ts_used b,sys.sm$ts_free c where a.tablespace_name = b.tablespace_name and a.tablespace_name = c.tablespace_name
以上是关于怎么查看oracle表空间,剩余大小,表空间利用的主要内容,如果未能解决你的问题,请参考以下文章