首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

五分鐘掌握 Oracle 表空間自由空間監控:核心 SQL、輸出解讀、管理建議

     編輯:Oracle 資料庫基礎

核心監控 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) 高閒置屬正常,除非排序作業頻繁失敗
  • 建立監控腳本納入排程,每日自動巡檢並報警
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved