[20240327]建立完善mfms.sql脚本.txt --//最近一直在通过FORCE_MATCHING_SIGNATURE定位有问题的SQL语句,这些语句大量没有使用绑定变量,导致不会出现AWR报表里面. --//建立一个脚本收集共享池的sql语句force_matching_signature相同,sql_id不同的情况. $ cat mfms.sql -- Copyright 2023 lfree. All rights reserved. -- Licensed under the Apache License, Version 2.0. See LICENSE.txt for terms and conditions. -------------------------------------------------------------------------------- -- -- File name: mfms.sql -- Purpose: Display sql statement similar to the force_matching_signature identical from gv$sqlarea -- -- Author: lfree -- -- Usage: -- @ mfms <sql_id_count> <display_record_number> -- -------------------------------------------------------------------------------- prompt prompt time unit : microsecond prompt SELECT * FROM ( SELECT force_matching_signature ,COUNT (*) ,ROUND (SUM (ELAPSED_TIME), 0) total_time ,SUM (EXECUTIONS) sum_exec ,ROUND (SUM (ELAPSED_TIME) / NULLIF (SUM (executions), 0), 0) avg_exec_time ,ROUND (SUM (ROWS_PROCESSED) / NULLIF (SUM (FETCHES), 0), 2) rows_per_fetch ,ROUND (SUM (BUFFER_GETS) / NULLIF (SUM (EXECUTIONS), 0), 2) lios_per_exec FROM gv$sqlarea WHERE force_matching_signature <> 0 GROUP BY force_matching_signature HAVING COUNT (*) >= &&1 ORDER BY 2 DESC ) WHERE ROWNUM <= &&2; --//测试看看. --//注:后面的执行时间以及执行次数以及平均执行时间等信息仅仅作为参考. SYS@192.168.100.235:1521/orcl> @ mfms 5 15 time unit : microsecond FORCE_MATCHING_SIGNATURE COUNT(*) TOTAL_TIME SUM_EXEC AVG_EXEC_TIME LIOS_PER_EXEC ------------------------ ---------- ---------- ---------- ------------- ------------- 4073084857451735172 212 1155039 10228 113 5 3620518798007503387 118 328145 134 2449 13 9685323836218277500 50 488949 195 2507 8 7756258419218828704 39 52610 118 446 2 10241493000169525925 14 29457 178 165 0 --//注:mfms.sql脚本做了小量修改,增加使用nullif函数以及rows_per_fetch信息. SYS@192.168.100.235:1521/orcl> select sql_text c100 from gv$sqlarea where FORCE_MATCHING_SIGNATURE=4073084857451735172 and rownum<=5; C100 ---------------------------------------------------------------------------------------------------- SELECT AUDIT_TIME FROM lis_test WHERE barcode = '240325552982' SELECT AUDIT_TIME FROM lis_test WHERE barcode = '240325546519' SELECT AUDIT_TIME FROM lis_test WHERE barcode = '240325552983' SELECT AUDIT_TIME FROM lis_test WHERE barcode = '240309374330' SELECT AUDIT_TIME FROM lis_test WHERE barcode = '240308362096' --//没有使用绑定变量语句实际上就好像一个成语,一颗老鼠屎搞坏一锅汤.
[20240327]建立完善mfms.sql脚本.txt
来源:这里教程网
时间:2026-03-03 19:51:25
作者:
编辑推荐:
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 一次ogg挖掘导致的生产故障
一次ogg挖掘导致的生产故障
26-03-03 - [20240328]为什么找不到执行计划.txt
[20240328]为什么找不到执行计划.txt
26-03-03 - oracle分布式事务异常处理方法
oracle分布式事务异常处理方法
26-03-03 - sqlhc的介绍和使用
sqlhc的介绍和使用
26-03-03 - Oracle 23C 新特征一JSON关系二元性
Oracle 23C 新特征一JSON关系二元性
26-03-03 - Oracle 23C 新特征- True Cache
Oracle 23C 新特征- True Cache
26-03-03 - 30分钟速达的风,还是吹到了县城
30分钟速达的风,还是吹到了县城
26-03-03 - [20240409]为什么一条sql语句在实例2执行要慢的分析.txt
[20240409]为什么一条sql语句在实例2执行要慢的分析.txt
26-03-03 - Oracle 新特征-Read-Only Per-PDB Standby
Oracle 新特征-Read-Only Per-PDB Standby
26-03-03 - Oracle 数据库 [INS-30060]check for group existence failed. 报错解决
