繁体   English   中英

Oracle Reyclebin不释放空间

[英]Oracle Reyclebin Not Releasing Space

我在Oracle 12.1上的数据库上工作。 每当我们出于任何原因删除表时,它都会进入回收站。 通常,每当我们构建另一个需要更多空间的表时,该空间就会自动在回收站中打开。 最近,回收站根本没有释放空间。 我必须手动清除回收站,否则无法构建需要该空间的表。

如何确保将回收站设置为仅在必要时自动清除自身? 我不需要自定义脚本或自动化程序; 我想按设计和预期的方式使用回收站。

您不应该依赖Oracle自动清除回收站,因为它的行为没有得到正确记录。 手动清除回收站可能是最好的选择。

根据Oracle 10g文档,回收站将根据空间压力先入先出。 如果用户用完配额或表空间已满或需要扩展数据文件,则会发生空间压力。

这是一个好的开始,但是该文档存在一些问题-它不能涵盖所有空间方案,例如完整的ASM磁盘组或OS驱动器,并且在11g版或更高版本中不存在。 我在My Oracle Support上也找不到任何相关信息。

Oracle通常具有丰富的文档,并且很少会在手册中看到这样的概念。 也许行为在现代版本中已完全改变,并且现在变得如此怪异和复杂,以至于没人愿意记录下来。 也许他们只是忘记了。

如果可能,请使用手动清除。 或者考虑缩小某些数据文件以更紧密地匹配磁盘组或操作系统限制。 也许那时甲骨文将“看到”太空压力。

解决:重新启动Oracle

每当我重新启动Oracle时,该错误就会消失。 我仍然没有此错误的根本原因说明。

次要:“清除”安全网

根据@Jon Heller的回应,现在依靠回收站来完成其工作不一定是安全的。 在这种情况下,我的团队在适当的情况下创建了低风险的“清除”语句。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM