oracle 删除表后,磁盘如何释放?

发布网友 发布时间:2022-04-23 15:26

我来回答

3个回答

热心网友 时间:2022-04-08 20:49

如果是system表空间的话,基本上没有办法变小了。(按照你的说法,就是释放磁盘空间)
就算你删除了表,但是数据文件(就是物理存在于磁盘上的文件)是不会变小的。而且system表空间非常*,里面存有所有的基表,所以resize不要想了。而且转移表空间神马的,用在其他表空间还可以,system也不可能,如果你真的把所有的表(这个表是指你建立的表)都删除了,那么就干脆重新建库吧,把原来的库删了,这样就可以了。
反正据我所知,如果是system表空间的话(system表空间数据文件所占空间大小),不重新建库是只能变大不能变小的。
如果是其他表空间的话,复制表空间,然后删除什么的可以考虑。
最后给你一个建议啊,你的存储应该是自动扩展的吧,那每个文件最大值最好不要太大,oracle这个东西是有多少占多少,然后再说其他,如果你给的太多,那么他就会一直占用新的。

热心网友 时间:2022-04-08 22:07

你好的!

一般来说,重建一个表空间!

把所有当前表空间的表都move 到新表空间中!

完后删除原来的表空间并删除相关的物理文件。

oracle 的shrink 表空间不怎么实用!

热心网友 时间:2022-04-08 23:42

数据文件一般都是设置自增长的, 表删掉以后只是逻辑空间减少了, 物理大小不会自己变小的. 但可以用resize改小, 但一定要比当前表空间大.
alter database datafile '/oradata2/mesdb/SYSTRAVELIDX119.ora' resize 1024M;

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com