核心監控 SQL
SELECT A.FILE_ID "FileNo",
A.TABLESPACE_NAME "Tablespace_Name",
A.BYTES "Bytes",
A.BYTES - SUM(NVL(B.BYTES,0)) "Used",
SUM(NVL(B.BYTES,0)) "Free",
ROUND(SUM(NVL(B.BYTES,0)) / A.BYTES * 100, 2) "%Free"
FROM DBA_DATA_FILES A, DBA_FREE_SPACE B
WHERE A.FILE_ID = B.FILE_ID(+)
GROUP BY A.TABLESPACE_NAME, A.FILE_ID, A.BYTES
ORDER BY A.TABLESPACE_NAME;
實際輸出範例與解讀
FileNo Tablespace_Name Bytes Used Free %Free
----- --------------- ----- --- ---- -----
1 IDX_JF 2.146E+09 849305600 1.297E+09 60.43
2 JFSJTS 2.146E+09 1.803E+09 343793664 16.02
3 JFSJTS 2.146E+09 1.359E+09 787431424 36.69
4 RBS 523239424 359800832 163438592 31.24
5 RBS 1.610E+09 1.606E+09 3104768 0.19 ← 危險:僅 0.19% 剩餘
6 RBSJF 3.220E+09 2.716E+09 504356864 15.66
7 SFGLTS 2.146E+09 1.228E+09 918159360 42.78
8 SFSJTS 2.146E+09 1.526E+09 620093440 28.89
9 SYSTEM 523239424 59924480 463314944 88.55
10 TEMP 523239424 294912 522944512 99.94
11 TOOLS 15728640 12582912 3145728 20.00
12 USERS 7340032 8192 7331840 99.89
管理決策建議
| 狀況 | 判斷標準 | 建議行動 |
| 空間嚴重不足 | %Free < 15%(如 RBS FileNo=5) | 立即 ADD DATAFILE 或啟用 AUTOEXTEND |
| 空間過度閒置 | %Free > 80% 且為靜態資料 | 考慮縮減配置(SYSTEM 需重建資料庫) |
| 高 DML 活動表空間 | %Free 降至 15% 以下 | 優先擴充 |
| 碎片整理 | 定期維護窗口 | EXP/IMP 可釋放大量碎片空間 |
關鍵提醒
- SYSTEM 表空間縮減極困難,規劃時預留足夠緩衝
- 暫存表空間 (TEMP) 高閒置屬正常,除非排序作業頻繁失敗
- 建立監控腳本納入排程,每日自動巡檢並報警