磁盤空間告警,查詢表空間佔用發現:UNDOTBS1 27GB、TEMP 20GB,合併佔用 47GB。疑有大事務導致 Undo 膨脹,AUM (Auto Undo Management) 僅擴不縮。
SELECT file_name, bytes/1024/1024 FROM dba_data_files WHERE tablespace_name='UNDOTBS1';SELECT usn, xacts, rssize/1024/1024/1024, hwmsize/1024/1024/1024, shrinks
FROM v$rollstat ORDER BY rssize;
觀察是否有活躍事務(xacts>0)。CREATE UNDO TABLESPACE undotbs2;ALTER SYSTEM SET undo_tablespace=undotbs2 SCOPE=BOTH;
新事務將使用 undotbs2,舊表空間進入 PENDING OFFLINE 狀態。SELECT usn, xacts, status, rssize/1024/1024/1024
FROM v$rollstat ORDER BY rssize;
輪詢直到所有 Segment 狀態為 OFFLINE(無活躍事務引用)。DROP TABLESPACE undotbs1 INCLUDING CONTENTS;ASMCMD> du
Used_MB Mirror_used_MB
21625 21625 -- 明顯下降UNDO_TABLESPACE 並關閉自動擴展,定期監控 Undo 使用率。