重建TEMP 表空间

当遇到Oracle数据库的ORA-01652错误,即临时表空间不足时,不重启也能解决。通过创建新临时表空间、更改默认表空间、删除原有表空间并重置默认设置,可以完成重建过程。同时,需注意在操作后为用户重新指定临时表空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:ora-01652 unable to extend temp segment by 128 in tablespace

        oracle临时表空间耗尽也不会释放,除非重启数据库.一般出现此类问题建议增大temp 

 

Temporary tablespace是不能直接drop默认的临时表空间的,不过我们可以通过以下方法来做。

 准备:查看目前的Temporary Tablespace
SQL> select name from v$tempfile;

NAME
———————————————————————
/product/app/oracle/oradata/uniguard/temp1.dbf

SQL> select username,temporary_tablespace from dba_users;
------------------------------ ------------------------------
USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
MGMT_VIEW                      TEMP
SYS                            TEMP
SYSTEM                         TEMP
DBSNMP                         TEMP
SYSMAN                         TEMP
UNIGUARD                       TEMP
OUTLN                          TEMP
MDSYS                          TEMP
ORDSYS                         TEMP
CTXSYS                         TEMP
ANONYMOUS                      TEMP

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
EXFSYS                         TEMP
DMSYS                          TEMP
WMSYS                          TEMP
XDB                            TEMP
ORDPLUGINS                     TEMP
SI_INFORMTN_SCHEMA             TEMP
OLAPSYS                        TEMP
MDDATA                         TEMP
DIP                            TEMP
SCOTT                          TEMP
TSMSYS                         TEMP

22 rows selected.


1.创建中转临时表空间
create temporary tablespace TEMP1 TEMPFILE '/product/app/oracle/oradata/uniguard/temp02.dbf' SIZE 2048M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;  

2.改变缺省临时表空间 为刚刚创建的新临时表空间temp1
alter database default temporary tablespace temp1; 

3.删除原来临时表空间
drop tablespace temp including contents and datafiles;

4.重新创建临时表空间
create temporary tablespace TEMP TEMPFILE '/product/app/oracle/oradata/uniguard/temp01.dbf' SIZE 2048M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;  

5.重置缺省临时表空间为新建的temp表空间
alter database default temporary tablespace temp; 

6.删除中转用临时表空间
drop tablespace temp1 including contents and datafiles;

7.如果有必要,那么重新指定用户表空间为重建的临时表空间 
alter user arbor temporary tablespace temp;  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值