######脚本###########

SELECT TABLESPACE_NAME, ROUND ( (USED / TOTAL_SIZE) * 100, 2) USED_RATE

FROM (SELECT A.TABLESPACE_NAME, TOTAL_SIZE, USED

FROM (  SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / 1024 / 1024 / 1024, 2) TOTAL_SIZE

FROM DBA_DATA_FILES

WHERE 1 = 1 AND TABLESPACE_NAME LIKE 'UNDOTBS%'

GROUP BY TABLESPACE_NAME) A,

(  SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / 1024 / 1024 / 1024, 2) USED

FROM DBA_UNDO_EXTENTS

WHERE 1 = 1 AND STATUS = 'UNEXPIRED'

GROUP BY TABLESPACE_NAME) B

WHERE 1 = 1 AND A.TABLESPACE_NAME = B.TABLESPACE_NAME);

------------------------------------------------------------------------------------------------------------------

The Expired blocks will be reused and hence this should be counted as 'available' space in the Undo segment.

You can check the status of the undo extents via the SQLs below.

select sum(bytes /(1024*1024)) from dba_undo_extents where status='EXPIRED';

select sum(bytes /(1024*1024)) from dba_undo_extents where status='ACTIVE';

select sum(bytes /(1024*1024)) from dba_undo_extents where status='UNEXPIRED';

For more detailed information, please refer to:

Master Note: High Undo Space Usage ( Doc ID 1578639.1 )

Above all, if the undo status is Expired, you can safely ignore the undo usage, as the space will be reused automatically.

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐