几种方法。
1、将表空间用compress=Y参数exp出来,将其中表truncate后,将表imp进去。
2、使用alter tablespace name coalesce;手动收缩一次。
3、将表空间的pctincreace参改为大于0,让其自动收缩。一般改为1。
alter tablespace name storage (pctincrease 1);
关于表空间pctincrease=1:
(1)不将pctincrease设为0,是因为SMON进程将只会定期将PCTINCREASE 不等于0的表空间的空闲碎块合并。如果设为0,将阻止SMON合并空闲碎块合并,这时,必须手工使用ALTER TABLESPACE XXX COALESCE;合并碎块。
(2)不将PCTINCREASE设为较大的数,仅仅用于防止新建的表使用大的PCTINCREASE,并造成空间使用的不可控。 如果表空间中再也不用建新表,那么该参数只要不等于0,其他取值就没有任何影响了。
另外,PCTINCREASE与表空间的自动增长没有关系,表空间的自动增长是通过AUTOEXTEND ON来控制的,并且它是纯粹线形增长的(即规定增长多少,就永远每次增长多少),不象表的PCTINCREASE一样会形成几何增长的可能。
关键词标签:oracle性能调整
相关阅读
热门文章 Oracle中使用alter table来增加,删除,修改列oracle中使用SQL语句修改字段类型-oracle修使用低权限Oracle数据库账户得到管理员权限Oracle对user的访问控制
人气排行 ORACLE SQL 判断字符串是否为数字的语句Oracle中使用alter table来增加,删除,修改列的语法ORACLE和SQL语法区别归纳(1)oracle grant 授权语句如何加速Oracle大批量数据处理Oracle删除表的几种方法ORACLE修改IP地址后如何能够使用Oracle 10g创建表空间和用户并指定权限
查看所有0条评论>>