当我们打算添加 2 gig 时,我们不小心将 20 gig 数据文件添加到 TEMP 表空间。我们怎样才能删除它?
一旦添加的数据文件可能不会被删除。唯一的选择是删除表空间并使用正确的数据文件再次创建它。由于它是一个临时表空间,因此数据应该没有问题。这应该在系统不使用时完成,因为 TEMP 表空间也被在线使用......
如http://www.idevelopment.info/data/Oracle/DBA_tips/Tablespaces/TBS_3.shtml所述, Oracle 9-up 需要使用以下序列:
如果您要调整大小的临时表空间(使用 drop/recreate 方法)是数据库的默认临时表空间,则需要执行更多步骤,所有步骤都记录在下面。
您需要执行的第一步是创建另一个临时表空间(我们称之为 TEMP2)。下一步是将要调整大小的临时表空间从默认临时表空间中删除(在我们的示例中,这将是一个名为 TEMP 的表空间),方法是将 TEMP2 设为默认值。将 TEMP 表空间删除/重新创建到您想要的大小。最后,将新创建的 TEMP 表空间设为数据库的默认临时表空间并删除 TEMP2 表空间。下面提供了一个完整的示例会话。[您需要为您的安装替换正确的数据文件路径。]:
SQL> CREATE TEMPORARY TABLESPACE temp2
2 TEMPFILE '/u02/oradata/TESTDB/temp2_01.dbf' SIZE 5M REUSE
3 AUTOEXTEND ON NEXT 1M MAXSIZE unlimited
4 EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;
表空间已创建。
SQL> ALTER DATABASE 默认临时表空间 temp2;
数据库已更改。
SQL> DROP TABLESPACE temp 包括内容和数据文件;
表空间下降。
SQL> CREATE TEMPORARY TABLESPACE temp
2 TEMPFILE '/u02/oradata/TESTDB/temp01.dbf' SIZE 500M REUSE
3 AUTOEXTEND ON NEXT 100M MAXSIZE unlimited
4 EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;
表空间已创建。
SQL> ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp;
数据库已更改。
SQL> DROP TABLESPACE temp2 包括内容和数据文件;
表空间下降。
SQL> drop tablespace TEMP include contents;。
这不会删除文件,但现在应该从 Oracle 释放文件,以便您可以使用“rm”命令删除它们。
我认为您需要以 Oracle 用户身份登录才能执行此操作。(或以 root 身份,然后是“su - oracle”。)。
您应该只对 TEMP 表空间执行此操作。
这是用于重新创建它的示例 SQL(替换您自己的文件名和大小):。
创建表空间临时数据文件。
'/ora04/oradata/aleph2/temp01.
'/ora04/oradata/aleph2/temp02.dbf' 大小 1000 M.
默认存储(初始 256K NEXT 256K MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCREASE 0)临时;。
这应该由您的 Oracle DBA 完成。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习