Oracle查询临时表空间

Posted 终身学习者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle查询临时表空间相关的知识,希望对你有一定的参考价值。

1、查看临时表分区

SELECT *
  FROM (SELECT USERNAME,
               SESSION_ADDR,
               SQL_ID,
               CONTENTS,
               SEGTYPE,
               BLOCKS * 8 / 1024 / 1024 GB
          FROM V$SORT_USAGE
         ORDER BY BLOCKS DESC)
 WHERE ROWNUM <= 200;

2、查看临时表空间

select *
  from (Select a.tablespace_name,
               to_char(a.bytes / 1024 / 1024, 99,999.999) total_bytes,
               to_char(b.bytes / 1024 / 1024, 99,999.999) free_bytes,
               to_char(a.bytes / 1024 / 1024 - b.bytes / 1024 / 1024,
                       99,999.999) use_bytes,
               to_char((1 - b.bytes / a.bytes) * 100, 99.99) || % use
          from (select tablespace_name, sum(bytes) bytes
                  from dba_data_files
                 group by tablespace_name) a,
               (select tablespace_name, sum(bytes) bytes
                  from dba_free_space
                 group by tablespace_name) b
         where a.tablespace_name = b.tablespace_name
        union all
        select c.tablespace_name,
               to_char(c.bytes / 1024 / 1024, 99,999.999) total_bytes,
               to_char((c.bytes - d.bytes_used) / 1024 / 1024, 99,999.999) free_bytes,
               to_char(d.bytes_used / 1024 / 1024, 99,999.999) use_bytes,
               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)
 order by tablespace_name ;

 

以上是关于Oracle查询临时表空间的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 11g - 临时表空间段未发布(Oracle 错误?)

如何查看oracle临时表空间当前使用了多少空间的大小

oracle创建用户表空间临时表空间分配权限步骤详解

mybatis oracle临时表的使用

Oracle创建表空间和分配用户权限

如何排查Oracle表空间不足问题