ORA-25153: Temporary Tablespace is Empty 解决方法

2008年的春节马上就要到来,深圳的冬天,日光依旧,一颗漂浮的心,在美丽浪漫的 烟雨 里,终于开始安静下来。前途是光明的,爱情是甜蜜的,秋香的出现,让每一天都充满激情,乐趣,突然发现,世界是多么的美好,这是一个美丽的 冬天。

下面,是我做的Oracle 10G 里面控制文件恢复后,临时表空间为空的处理方法,这是Oracle 10G 的一个bug,在11G里面已经没有这个问题。

问题: ORA-25153: Temporary Tablespace is Empty

我们先查看表空间

SQL> select tablespace_name,status from dba_tablespaces;

TABLESPACE_NAME                STATUS
------------------------------ ---------
SYSTEM                         ONLINE
UNDOTBS1                       ONLINE
SYSAUX                         ONLINE
TEMP                           ONLINE
USERS                          ONLINE
RECOVERY_TBS                   ONLINE
都temp online 在线。

 SQL> select tablespace_name,file_name from dba_temp_files;

no rows selected

就会发现,dba_temp_files 原来如此。

SQL> alter tablespace temp add tempfile '/oradata/elife02/temp01.dbf' SQL>  select FILE_NAME,TABLESPACE_NAME,STATUS from dba_temp_files;

FILE_NAME TABLESPACE_NAME STATUS

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

/oradata/elife02/temp01.dbf TEMP AVAILABLE

还可以指定默认的临时表空间

SQL>alter database  default temporary tablespace temp;

下面,我们来了解一下临时表的用途:

disk sort:

自己的理解是排序始终是在内存里完成的,如果要排序的数据量很大,在内存里不能完成,oracle会分阶段来排序,每次先排一部分,并且把排好序的数据临时存放在用户default temporary tablespace中的temp segment上,而临时表空间对应的tempfile属于disk文件,这就是disk sort的由来。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/701141/viewspace-135994/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/701141/viewspace-135994/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值