Oracle数据库是当今市面上最受欢迎的数据库之一,它的存储技术能够处理大量数据,且具有很高的可靠性。然而,在使用过程中也会遇到存储已满的情况,需要清理或扩容以获得更多的存储空间。
一、Oracle数据库清理
1. 清理无用对象,可以删除上次操作中失败或未使用的对象,SQL语句示例:
“`sql
DROP TABLE
;
2. 清理使用完的表空间,如果表空间中不再使用的对象已经存在,可以删除该表空间,SQL语句示例:
```sqlDROP TABLESPACE INCLUDING CONTENTS AND DATAFILES;
3. 将脏数据提交给Oracle,当一些使用完的表或记录被删除之后,一些脏数据会留在Oracle中,可以使用“COMMIT”指令把这些脏数据提交给Oracle,SQL语句示例:
“`sql
COMMIT;
二、Oracle数据库扩容
1. 使用ASM实例扩容,首先利用ASM实例把数据文件扩大,把需要的空间增加到表空间或添加新的表空间,SQL语句示例:
```sqlALTER TABLESPACE ADD DATAFILE '' SIZE AUTOEXTEND ON NEXT EXCEPTIONS INTO MAXSIZE UNLIMITED;
2. 增加表空间,如果添加的表空间没有和现有的表空间之间的关联,则可以采用增加新的表空间的方式扩容,SQL语句示例:
“`sql
CREATE TABLESPACE DATAFILE ” SIZE AUTOEXTEND ON NEXT EXCEPTIONS INTO MAXSIZE UNLIMITED;
Oracle数据库存储已满十分常见,当出现这种情况时,可以先通过清理掉一些无用对象或者使用完的表空间来释放空间;如果不能满足需要,则可以通过调整ASM实例或者增加新的表空间来扩容,以获得更多的存储空间。