下午分析SYSAUX表空間時,還發現有一個配有流複製的數據庫上有一張表STREAMS$_APPLY_SPILL_MESSAGES佔據了此表空間很大的一部分空間約15g。此表是用來存儲流複製應用時,對於大小超過TXN_LCR_SPILL_THRESHOLD限制的大事務,從流池中溢出來的信息.
參看SYSAUX tablespace grows quite fast due to Apply spilling [ID 556183.1]
通過如下步驟來清除此表的信息:
begin
dbms_apply_adm.stop_apply('STREAMS_APPLY');
end;
/
BEGIN
FOR V_TXID IN (SELECT A.XIDUSN || '.' || A.XIDSLT || '.' || A.XIDSQN AS TXID
FROM DBA_APPLY_SPILL_TXN A) LOOP
SYS.PURGE_SPILL_TXN('STREAMS_APPLY', V_TXID.TXID);
END LOOP;
END;
/
truncate table STREAMS$_APPLY_SPILL_MESSAGES;
begin
dbms_apply_adm.start_apply('STREAMS_APPLY');
end;
/
再查看此表的大小,變爲0.0625M。