如何把临时文件里的数据清掉,然后删除。

[复制链接]
查看11 | 回复5 | 2010-5-13 10:04:27 | 显示全部楼层 |阅读模式
我在执行一个有大量数据排序的SQL语句,
执行完后我发现临时文件temp01达到了16G,
我想把它改小一些
alter database datafile 'F:\ORADATA_DMMKT\TEMP01.DBF' resize 200m
时,出现了一个错误的提示ora-03297:file contains used data beyond requested resize value
说是临时文件里有数据,如何把临时文件里的数据清掉,然后删除。
回复

使用道具 举报

千问 | 2010-5-13 10:04:27 | 显示全部楼层
临时表空间你删除重建好了,16G估计要删除不短的时间了。
回复

使用道具 举报

千问 | 2010-5-13 10:04:27 | 显示全部楼层
这位大哥,全体如何操作
回复

使用道具 举报

千问 | 2010-5-13 10:04:27 | 显示全部楼层
删掉临时文件,再建一个!
回复

使用道具 举报

千问 | 2010-5-13 10:04:27 | 显示全部楼层
今天才发的
[php]
SQL> select FILE_NAME,FILE_ID,TABLESPACE_NAME from dba_temp_files;
FILE_NAME
FILE_ID TABLESPACE_NAME

-------------------------------------------------------------------------------- ---------- ------------------------------
/opt/oracle/oradata/testdbc/tbs_temp_1.dbf
2 TBS_TEMP

SQL> alter database tempfile '/opt/oracle/oradata/testdbc/tbs_temp_1.dbf' drop;
Database altered
SQL> select * from dba_temp_files;
FILE_NAME
FILE_ID TABLESPACE_NAME

-------------------------------------------------------------------------------- ---------- ------------------------------


SQL> alter tablespace TBS_TEMP add tempfile '/opt/oracle/oradata/testdbc/tbs_temp_1.dbf' reuse;
Tablespace altered
SQL>select * from dba_temp_files;
FILE_NAME
FILE_ID TABLESPACE_NAME

-------------------------------------------------------------------------------- ---------- ------------------------------
/opt/oracle/oradata/testdbc/tbs_temp_1.dbf
1 TBS_TEMP

SQL>
[/php]
回复

使用道具 举报

千问 | 2010-5-13 10:04:27 | 显示全部楼层
好贴,谢谢。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行