oracle删除临时表空间

oracle删除临时表空间,第1张

首先查看temp是不是某些用户的默认表空间

SELECT USERNAME,TEMPORARY_TABLESPACE FROM DBA_USERS

如果有用户的默认临时表空间是temp的话,建议进行更改

alter user xxx temporary tablespace tempdefault

设置tempdefault为默认临时表空间

alter database default temporary tablespace tempdefault

然后用你列出来的语句删除即可

drop tablespace temp including contents and datafile

即便丢失了所有的临时表空间,只要不是数据库当中用到了order by、子查询、group by、distinct等需要消耗临时表空间的语句(而且要比较大才行,小的话就直接用pga的SORT_AREA区了),那么也不会对业务造成错误导致中断,发现问题之后只需要新建一个临时表空间就可以了。你要是了解备份恢复的话,实际上在进行备份的时候临时表空间都不会进行备份,而只是有一个创建临时表空间的语句而已。

--可以首先查询当前数据库默认临时表空间

select * from database_properties where propertyname_name=''

--创建新的临时表空间

create temporary tablespace temp02 tempfile'E:\oracle\aradata\lims\TEMP2.DBF'size 1024M on

--修改默认表空间为刚刚建立的默认表空间

alter database default temporary tablespace temp02

--删除原来的临时表

drop tablespace temp including contents and datafiles

--这样不就Ok了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9644738.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存