1. 查询空间的使用率,有用视图dba_temp_file, v$temp_extent_pool。 select c.tablespace_name, to_char(c.bytes / 1024 / 1024 / 1024, '99,999.999') total_gb, to_char((c.bytes - d.bytes_used) / 1024 / 1024 / 1024, '99,999.999') free_gb, to_char(d.bytes_used / 1024 / 1024 / 1024, '99,999.999') use_gb, to_char(d.bytes_used * 100 / c.bytes, '99.99') || '%' use from (select tablespace_name, sum(bytes) bytes from dba_temp_files GROUP by tablespace_name) c, (select tablespace_name, sum(bytes_cached) bytes_used from v$temp_extent_pool GROUP by tablespace_name) d where c.tablespace_name = d.tablespace_name;
2. 查看那些用户正在适用temp表空间,用到视图v$tempseg_usage, v$temp_space_header select a.username, a.sql_id, a.SEGTYPE, a.tablespace, b.BYTES_USED / 1024 / 1024 / 1024, b.BYTES_FREE / 1024 / 1024 / 1024 from V$TEMPSEG_USAGE a ,V$TEMP_SPACE_HEADER b where a.TABLESPACE = b.tablespace_name and a.tablespace='TEMP'; 3. 根据查询到的sql_id值去查看那些session正在适用temp。 引用的连接: http://blog.itpub.net/31547066/viewspace-2286048/
