1: SELECT A.TABLESPACE_NAME “表空间名”, TOTAL “表空间大小”, FREE “表空间剩余大小”, (TOTAL – FREE) “表空间使用大小”, TOTAL / (1024 * 1024 * 1024) “表空间大小(G)”, FREE / (1024 * 1024 * 1024) “表空间剩余大小(G)”, (TOTAL – FREE) / (1024 * 1024 * 1024) “表空间使用大小(G)”, ROUND((TOTAL – FREE) / TOTAL, 4) * 100 “使用率 %” FROM (SELECT TABLESPACE_NAME, SUM(BYTES) FREE FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) A, (SELECT TABLESPACE_NAME, SUM(BYTES) TOTAL FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) B WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME;
2: SELECT UPPER(F.TABLESPACE_NAME) “TABLENAME”, D.TOT_GROOTTE_MB “TABLETOTALSPACE(M)”, D.TOT_GROOTTE_MB – F.TOTAL_BYTES “USEDTABLESPACE(M)”, TRIM (‘ ‘ FROM TO_CHAR(ROUND((D.TOT_GROOTTE_MB – F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),’990.99’)) || ‘%’ “PERCENTAGE”, F.TOTAL_BYTES “FREESPACE(M)”, F.MAX_BYTES “MAXBLOCK(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;
查看ORACLE 表空间存放路径: SELECT * FROM SYS.DBA_DATA_FILES T;