db2 ALTER TABLESPACE TBS1 REDUCE MAX
怎么释放db2的表空间,部署的服务器数据空间快满了,想释放部分静态表数据的空间,
但是执行truncate 和drop命令好像无效果,求指导有哪些比较靠谱的方法解决
drop table JS_1
commit;
truncate table JS_1 immediate DROP STORAGE ;
commit;
reorg table JS_1;
以上命令都试过了,查看服务器并无变化
db2 ALTER TABLESPACE TBS1 REDUCE MAX
这个命令可以的,要先把表数据清掉,然后再降高水位
回收是有一定过程的,不是一下就全部释放了,可以用命令:
db2 "select varchar(tbsp_name,15) as tbsp_name,last_extent,num_extents_moved,num_extents_left,total_move_time from table(mon_get_extent_movement_status('',-1)) as T"
查看进度
收起因为 HWM 特性,代表表空间当前分配的最高也数据,值可能大大高于已使用的页数(used pages)
删除(drop)表数据后, 虽然可用空间会增加,但并不会被DB2自动回收, HWM仍然很高。
9.7 以后的版本,如果是自动存储表空间,可以是使用1F的方式
DMS表空间 可以尝试
alter tablespace tablespace-name lower high water mark.
什么类型的表空间?DMS的可以看看有没有free pending 的page,尝试降一下高水位线,alter tablespace tbspname lower high water mark
收起