oracle-优化-查看ASH指定时间内特定存储过程中的top-sql执行耗时

简介:

查看ASH指定时间内特定存储过程中的top-sql执行耗时

  • &proc_name
  • &begin_time
  • &end_time
REM 查看ASH指定时间内特定存储过程中的top-sql执行耗时
pro
prompt 指定时间段内,特定存储过程中的top-sql耗时
set line 200
set pages 1000
set verify off
col event for a50

with t_sql as
 (select /*+ rule */
   sql_id, event, count(*) as elapsed_time
    from gv$active_session_history
   where to_char(sample_time, 'yyyy-mm-dd hh24:mi:ss') >=
         '&begin_time'
     and to_char(sample_time, 'yyyy-mm-dd hh24:mi:ss') <=
         '&end_time'
     and plsql_entry_object_id in
         (select object_id
            from dba_objects
           where object_name = upper('&proc_name'))
     and sql_id is not null
   group by sql_id, event)
select sqlid, most_event, total_time
  from (select a.sql_id     as sqlid,
               b.event      as most_event,
               a.total_time as total_time
          from (select sql_id, sum(elapsed_time) as total_time
                  from t_sql
                 group by sql_id) a,
               (select sql_id, event
                  from (select sql_id,
                               event,
                               row_number() over(partition by sql_id order by elapsed_time desc) as time_rank
                          from t_sql)
                 where time_rank = 1) b
         where a.sql_id = b.sql_id
         order by a.total_time desc) c
 where rownum <= 10;
undefine proc_name
undefine begin_time
undefine end_time
目录
相关文章
|
5月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
411 8
|
8月前
|
存储 Oracle 关系型数据库
Oracle存储过程插入临时表优化与慢查询解决方法
优化是一个循序渐进的过程,就像雕刻一座雕像,需要不断地打磨和细化。所以,耐心一点,一步步试验这些方法,最终你将看到那个让你的临时表插入操作如同行云流水、快如闪电的美丽时刻。
378 14
|
10月前
|
SQL Oracle 关系型数据库
解决大小写、保留字与特殊字符问题!Oracle双引号在SQL中的特殊应用
在Oracle数据库开发中,双引号的使用是一个重要但易被忽视的细节。本文全面解析了双引号在SQL中的特殊应用场景,包括解决标识符与保留字冲突、强制保留大小写、支持特殊字符和数字开头标识符等。同时提供了最佳实践建议,帮助开发者规避常见错误,提高代码可维护性和效率。
408 6
|
11月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
|
11月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】yashandb执行包含带oracle dblink表的sql时性能差
【YashanDB知识库】yashandb执行包含带oracle dblink表的sql时性能差
|
11月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
本文来自YashanDB官网,介绍如何处理Oracle客户端sql*plus中使用@@调用同级目录SQL脚本的场景。崖山数据库23.2.x.100已支持@@用法,但旧版本可通过Python脚本批量重写SQL文件,将@@替换为绝对路径。文章通过Oracle示例展示了具体用法,并提供Python脚本实现自动化处理,最后调整批处理脚本以适配YashanDB运行环境。
|
SQL Oracle 关系型数据库
如何在 Oracle 中配置和使用 SQL Profiles 来优化查询性能?
在 Oracle 数据库中,SQL Profiles 是优化查询性能的工具,通过提供额外统计信息帮助生成更有效的执行计划。配置和使用步骤包括:1. 启用自动 SQL 调优;2. 手动创建 SQL Profile,涉及收集、执行调优任务、查看报告及应用建议;3. 验证效果;4. 使用 `DBA_SQL_PROFILES` 视图管理 Profile。
|
SQL 关系型数据库 Oracle
ORACLE SQL优化之ORA-03150&ORA-02055&ORA-02063
                                                                                                             >   
5107 0
|
SQL Oracle 关系型数据库
Oracle SQL优化之多表连接
Oracle SQL优化之多表连接
844 0
Oracle SQL优化之多表连接
|
SQL 存储 Oracle
Oracle数据库 | SQL语句执行计划、语句跟踪与优化实例
Oracle数据库 | SQL语句执行计划、语句跟踪与优化实例
531 0

推荐镜像

更多