TEMP临时表空间过大的处理方法

 

#查看用户默认表临时表空间

select username,temporary_tablespace from dba_users;

#查看临时表数据文件

select name from v$tempfile;

 

#查看哪些用户在使用临时表空间

SELECT se.username, se.SID, se.serial#, se.sql_address, se.machine, se.program, su.TABLESPACE,su.segtype,  su.CONTENTS FROM v$session se, v$sort_usage su WHERE se.saddr = su.session_addr

 

#创建备用临时表空间
create  temporary tablespace temp1  tempfile '/oradata/temp.dbf' size 512M autoextend on next 10M maxsize unlimited;

 

#更改数据库默认临时表空间

alter database default temporary tablespace temp1;

 

#更改用户临时表空间

alter user test TEMPORARY  TABLESPACE temp1;

 

#将表空间的内容和数据文件一起删除。

drop tablespace temp including contents and datafiles;

 

#创建原临时表空间
create temporary tablespace temp  tempfile '/oradata/temp01.dbf' size 512M autoextend on next 10M maxsize unlimited;

 

#更改数据库默认临时表空间

alter database default temporary tablespace temp;

 

#更改用户临时表空间

alter user test TEMPORARY TABLESPACE temp;

#将表空间的内容和数据文件一起删除。

drop tablespace temp1 including contents and datafiles;

 

#增加临时数据文件

alter tablespace temp add tempfile '/oradata/temp02.dbf' size 512M;

 

#查看临时文件名称,数据文件,大小及是否自动扩展状态

select file_name,tablespace_name,bytes/1024/1024 MB,autoextensible from dba_temp_files;

 

#查看临时表空间的使用情况
select tablespace_name,current_users,total_blocks,used_blocks,free_blocks,free_blocks/total_blocks from v$sort_segment:

#下面是查询在sort排序区使用的执行耗时的SQL:
Select se.username,se.sid,su.extents,su.blocks*to_number(rtrim(p.value))as Space,tablespace,segtype,sql_text
  from v$sort_usage su,v$parameter p,v$session se,v$sql s
  where p.name='db_block_size' and su.session_addr=se.saddr and s.hash_value=su.sqlhash and s.address=su.sqladdr
  order by se.username,se.sid

或是:

Select su.username,su.Extents,tablespace,segtype,sql_text
From v$sort_usage su,v$sql s
Where su.SQL_ID = s.SQL_ID

Select se.username,se.sid,su.extents,su.blocks*to_number(rtrim(p.value))as Space,tablespace,segtype,sql_text from v$sort_usage su,v$parameter p,v$session se,v$sql s where p.name='db_block_size' and su.session_addr=se.saddr and s.hash_value=su.sqlhash and s.address=su.sqladdr order by se.username,se.sid;

 

TEMP增长的两个重要视图:

v$sort_usage和v$sort_segment

 

参考来自:http://bbs.chinaunix.net/thread-3633128-1-1.html

===================================================================================

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任! 谢谢合作!

QQ: 164798858@qq.com
Sina: weibo.com/kaijunfeng
Yahoo: fffygapl@yahoo.com.cn


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值