如何从 ASH 找到消耗 PGA 和 临时表空间 较多的 Top SQL_ID (Doc ID 2610646.1)

适用于:

Oracle Database - Enterprise Edition - 版本 11.2.0.1 和更高版本
本文档所含信息适用于所有平台

目标

提供一些诊断脚本,用于从 ASH 中找到最消耗 PGA 或者临时段的 sql_id。

这有助于诊断 ORA-1652 错误。

解决方案

最消耗 PGA 的 sql_id:

select *
from (select instance_number, sql_id, max(pga_sum_mb) pga_max
from (select instance_number, sample_time, sql_id, round(sum(nvl(pga_allocated, 0))/1024/1024) pga_sum_mb
from dba_hist_active_sess_history
where sample_time between to_timestamp('&begin_timestamp', 'yyyy/mm/dd hh24:mi') and to_timestamp('&end_timestamp', 'yyyy/mm/dd hh24:mi')
group by instance_number, sample_time, sql_id)
group by instance_number, sql_id
order by pga_max desc)
where rownum <= 10; Enter value for begin_timestamp: 2019/12/10 08:00
Enter value for end_timestamp: 2019/12/10 11:00 INSTANCE_NUMBER SQL_ID PGA_MAX
--------------- ------------- ----------
2 26
2 1cq3qr774cu45 3
2 18wpbpn3a2ypc 2
2 84qp2j10cw7qs 2
2 63zy2j74j3z7z 2
2 4nxyknq1awbrd 1

最消耗临时段的 sql_id:

select *
from (select instance_number, sql_id, max(temp_sum_mb) temp_max
from (select instance_number, sample_time, sql_id, round(sum(nvl(temp_space_allocated, 0))/1024/1024) temp_sum_mb
from dba_hist_active_sess_history
where sample_time between to_timestamp('&begin_timestamp', 'yyyy/mm/dd hh24:mi') and to_timestamp('&end_timestamp', 'yyyy/mm/dd hh24:mi')
group by instance_number, sample_time, sql_id)
group by instance_number, sql_id
order by temp_max desc)
where rownum <= 10; Enter value for begin_timestamp: 2019/12/10 08:00
Enter value for end_timestamp: 2019/12/10 11:00 INSTANCE_NUMBER SQL_ID TEMP_MAX
--------------- ------------- ----------
2 0
2 18wpbpn3a2ypc 0
2 1cq3qr774cu45 0
2 4nxyknq1awbrd 0
2 63zy2j74j3z7z 0
2 84qp2j10cw7qs 0

如何从 ASH 找到消耗 PGA 和 临时表空间 较多的 Top SQL_ID (Doc ID 2610646.1)的更多相关文章

  1. ORALCE删除临时表空间的方法---解决ORA01033: oralce initialization or shutdown in progress方案

    当一台主机上oralce 临时表空间太多,而又用不到这些临时表空间的时候,    TABLESPACE 会占用大量的存储空间.本文介绍一种删除ORACLE 临时表空间的方法. 一 启动任务管理器.在任 ...

  2. Oracle查询临时表空间的占用

    可以使用以下语句查询是哪个session number的哪个sql占用了较大的临时表空间 select inst_id,username,session_num,sql_id,tablespace,s ...

  3. ORACLE临时表空间总结

    临时表空间概念 临时表空间用来管理数据库排序操作以及用于存储临时表.中间排序结果等临时对象,当ORACLE里需要用到SORT的时候,并且当PGA中sort_area_size大小不够时,将会把数据放入 ...

  4. ORACLE临时表空间

    ORACLE临时表空间总结 2014-10-05 11:35 by 潇湘隐者, 临时表空间概念 临 时表空间用来管理数据库排序操作以及用于存储临时表.中间排序结果等临时对象,当ORACLE里需要用到S ...

  5. ORACLE 临时表空间管理

     临时表空间和临时段 临时表空间用于存放排序.临时表等数据,其信息不需要REDO,因此临时表的DML操作往往比普通表产生的REDO少很多.临时表数据变化不产生REDO,UNDO数据变化产生REDO.临 ...

  6. Oracle临时表空间语句、作用

    在Oracle数据库中:一个表空间只属于一个数据库使用:而一个数据库可以拥有多个表空间.属于"一对多"的关系 我们对照着mysql来理解. 1.Oracle有表空间,mysql没有 ...

  7. Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理

    摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■  详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...

  8. ORACLE 临时表空间清理

    Oracle临时表空间主要用来做查询和存放一些缓冲区数据.临时表空间消耗的主要原因是需要对查询的中间结果进行排序.临时表空间的主要作用: 索引create或rebuildOrder by 或 grou ...

  9. 10g中HASH GROUP BY引起的临时表空间不足

    原本在9i上可以顺利完成的CTAS脚本,迁移到10g后运行总是报“ORA-1652: unable to extend temp segment by 128 in tablespace TS_HQY ...

随机推荐

  1. 2017 ACM/ICPC 沈阳 L题 Tree

    Consider a un-rooted tree T which is not the biological significance of tree or plant, but a tree as ...

  2. Kinect-v2 Examples with MS-SDK(译文二)

    K2-asset提供的脚本组件 K2-asset在KinectScripts文件夹中提供通用脚本组件,并在KinectDemos / 文件夹的相应脚本子文件夹中提供特定于演示的组件.可以在自己的Uni ...

  3. 基于cyusb3014的usb3.0双目摄像头开发测试小结(使用mt9m001c12stm)

    测试图像 摄像头分辨率为1280*1024,双目分辨率为2560*1024 ps:时钟频率太高,时序约束还得进一步细化,图像偶尔会出现部分雪花,下一步完善

  4. Django 08

    目录 sweetalert弹窗 bulk-create 自定义分页器 sweetalert弹窗 下载sweetalert并存放在Django项目中的静态文件夹中 https://github.com/ ...

  5. Python3 常用模块2

    目录 time 模块 时间戳形式 格式化时间 结构化时间 time.time() time.sleep() datetime 模块 random 模块 hashlib 模块 和 hmac 模块 typ ...

  6. 记录一次VMware与xshell远程链接的总结

    VMware 与xshell链接 说在前面 用了一年多的virtualbox,虚拟机环境的配置算是理清了,可最近参加红帽培训,大家用的都是VMware,想想我也试试吧,刚好再熟悉一下,于是就捣鼓了很久 ...

  7. android studio 代码问题总结

    1,android studio隐藏title时,用eclipse里面的方法不行,所以用下面的代码解决,此代码需要写在 加载xml文件之后 getSupportActionBar().hide(); ...

  8. 《Java基础知识》Java继承的概念和实现

    继承时类和类之间的关系,是一个很简单很直观的概念,与显示生活中的继承(例如儿子继承了父亲财产)类似. 继承可以理解为一个类从另一个类中获取方法和属性的过程.如果类B继承于类A,那么类B就拥有类A的属性 ...

  9. 《Java基础知识》Java IO流详解

    Java IO概念 1. 用于设备之间的数据传输. 2. Java 将操作数据流的功能封装到了IO包中. 3. 数据流流向分:输入流和输出流,操作对象为文件. 4. 流按照操作数据分:字节流(通用)和 ...

  10. LeetCode刷题总结-哈希表篇

    本文总结在LeetCode上有关哈希表的算法题,推荐刷题总数为12题.具体考察的知识点如下图: 1.数学问题 题号:149. 直线上最多的点数,难度困难 题号:554. 砖墙,难度中等(最大最小边界问 ...