广告
返回顶部
首页 > 资讯 > 数据库 >oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户
  • 587
分享到

oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户

2024-04-02 19:04:59 587人浏览 独家记忆
摘要

这篇文章给大家分享的是有关oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   

这篇文章给大家分享的是有关oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

    1.查询临时表空间的使用率:

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.查询那些用户在使用

select a.username,

       a.sql_id,

       a.SEGTYPE,

       b.BYTES_USED/1024/1024/1024||‘G’,

       b.BYTES_FREE/1024/1024/1024  from   V$TEMPSEG_USAGE  a  join  V$TEMP_SPACE_HEADER b on   a.TABLESPACE=b.tablespace_name; 

        解释username  正在执行sql的用户名

            sql_id    正在执行的sql的的sql_id

            segtype   正在执行的SQL语句做的是什么操作

            BYTES_USED 正在执行sql语句使用的临时表空间的大小

            BYTES_FREE  剩余多少临时表空间

oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户

   大家可以看到这个临时表空间的有6个数据文件,查询的结果显示按照每个临时的数据文件使用了多少,还剩余多少,又又有一个问题是第一用户DBSNMP用户已经把临时表空间占满了那么第二个用户还能使用这个六个数据文件的临时表空间么,个人理解是六个数据文件中有第一个用户在使用,也有第二个用户在使用。

   查询实例中时候是否有大字段在使用临时表空间:

    select *  from V$TEMPORARY_LOBS;

关于数据字典V$TEMP_SPACE_HEADER官方文档的解释:

V$TEMP_SPACE_HEADER 显示每个LOCALLY MANAGED临时表空间的每个文件的聚合信息,包括当前正在使用的空间量以及空间头中标识的空闲量。    

ColumnDatatypeDescription
TABLESPACE_NAMEVARCHAR2(30)Name of the temporary tablespace
FILE_IDNUMBERAbsolute file number
BYTES_USEDNUMBERHow many bytes are in use
BLOCKS_USEDNUMBERHow many blocks are in use
BYTES_FREENUMBERHow many bytes are free
BLOCKS_FREENUMBERHow many blocks are free
RELATIVE_FNONUMBERThe relative file number for the file

关于V$TEMPSEG_USAGE的官方文档的解释:

V$TEMPSEG_USAGE 描述临时段使用情况。 

数据类型描述
USERNAMEVARCHAR2(30)请求临时空间的用户
USERVARCHAR2(30)此列已过时并维护以便向后兼容。此列的值始终等于中的值USERNAME
SESSION_ADDRRAW(4 | 8)会话地址
SESSION_NUMNUMBER会话序列号
SQLADDRRAW(4 | 8)SQL语句的地址
SQLHASHNUMBERSQL语句的哈希值
SQL_IDVARCHAR2(13)SQL语句的SQL标识符
TABLESPACEVARCHAR2(31)分配空间的表空间
CONTENTSVARCHAR2(9)指示表是否TEMPORARYPERMANENT
SEGTYPEVARCHAR2(9)排序类型的类型:
  • SORT

  • HASH

  • DATA

  • INDEX

  • LOB_DATA

  • LOB_INDEX

SEGFILE#NUMBER初始范围的文件号
SEGBLK#NUMBER初始范围的块号
EXTENTSNUMBER分配给排序的范围
BLOCKSNUMBER分配给排序的块中的范围
SEGRFNO#NUMBER初始范围的相对文件号

关于V$TEMP_EXTENT_POOL的官方文档中的解释

V$TEMP_EXTENT_POOL显示缓存并用于实例的临时空间的状态。请注意,临时空间缓存的加载是惰性的,并且实例可以处于休眠状态。

数据类型描述
TABLESPACE_NAMEVARCHAR2(30)表空间的名称
FILE_IDNUMBER绝对文件号
EXTENTS_CACHEDNUMBER已缓存的范围数
EXTENTS_USEDNUMBER实际使用的范围数
BLOCKS_CACHEDNUMBER缓存的块数
BLOCKS_USEDNUMBER使用的块数
BYTES_CACHEDNUMBER缓存的字节数
BYTES_USEDNUMBER使用的字节数
RELATIVE_FNONUMBER相对文件号

关于V$TEMPORARY_LOBS官方文档解释

V$TEMPORARY_LOBS 显示临时LOB。

数据类型描述
SIDNUMBER会话ID
CACHE_LOBSNUMBER缓存临时LOB的数量
NOCACHE_LOBSNUMBERnocache临时LOB的数量
ABSTRACT_LOBSNUMBER抽象LOB的数量

感谢各位的阅读!关于“oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

您可能感兴趣的文档:

--结束END--

本文标题: oracle11g如何查询临时表空间的使用率和正在使用临时表空间的用户

本文链接: https://www.lsjlt.com/news/64369.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作