1.可以在pl/sql test window中执行下面的过程
DECLARE
owner VARCHAR2(30);
NAME VARCHAR2(30);
seg_type VARCHAR2(30);
tblock NUMBER;
tbyte NUMBER;
ublock NUMBER;
ubyte NUMBER;
lue_fid NUMBER;
lue_bid NUMBER;
lublock NUMBER;
BEGIN
dbms_space.unused_space(upper('scott'), upper('emp'), 'TABLE', tblock, tbyte, ublock, ubyte, lue_fid, lue_bid, lublock);
dbms_output.put_line('Total blocks allocated to table = '|| to_char(tblock));
dbms_output.put_line('Total bytes allocated to table = '|| to_char(tbyte));
dbms_output.put_line('Unused blocks(above HWM) = '|| to_char(ublock));
dbms_output.put_line('Unused bytes(above HWM) = '|| to_char(ubyte));
dbms_output.put_line('Last extent used file id = '|| to_char(lue_fid));
dbms_output.put_line('Last extent used beginning block id = '|| to_char(lue_bid));
dbms_output.put_line('Last used block in last extent = '|| to_char(lublock));
END;
----------------------------------------------
Total blocks allocated to table = 8
Total bytes allocated to table = 65536
Unused blocks(above HWM) = 6
Unused bytes(above HWM) = 49152
Last extent used file id = 1
Last extent used beginning block id = 50465
Last used block in last extent = 2
2.可以对表进行统计收集后查看dba_tables
3.对HWM的处理
a) exp/drop/imp表
b) alter table xxx move ,在move过程中需要两倍的空间
c) alter table xxx deallocate unused; 处理HWM以上的空闲空间