반응형
오라클 리터럴(Literal) SQL 및 성능정보 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
SELECT *
FROM ( SELECT ( SELECT parsing_schema_name FROM v$sqlarea WHERE sql_id=a.max_sql_id ) as schema
, ( SELECT module FROM v$sqlarea WHERE sql_id=a.max_sql_id ) as module
, a.max_sql_id
, a.plan_cnt
, a.literal_sql_cnt
, a.execution_cnt
, buffer_gets
, buffer_gets_per
, cpu_time
, cpu_time_per
, elapsed
, elapsed_per
, SUBSTR((SELECT sql_fulltext FROM v$sqlarea WHERE sql_id = a.max_sql_id),1,300) sql_text
FROM ( SELECT force_matching_signature
, COUNT(exact_matching_signature) literal_sql_cnt
, SUM(executions) execution_cnt
, MAX(sql_id) max_sql_id
, COUNT(DISTINCT plan_hash_value) plan_cnt
, SUM(buffer_gets) buffer_gets
, TRUNC(SUM(buffer_gets)/SUM(executions)) buffer_gets_per
, ROUND(SUM(cpu_time)/1000000, 2) cpu_time
, ROUND(SUM(cpu_time)/SUM(executions)/1000000, 2) cpu_time_per
, ROUND(SUM(elapsed_time)/1000000, 2) elapsed
, ROUND(SUM(elapsed_time)/SUM(executions)/1000000, 2) elapsed_per
FROM v$sql
WHERE parsing_schema_name NOT IN ('SYS','SYSTEM','SYSMAN')
AND executions > 0
GROUP BY force_matching_signature
HAVING COUNT(exact_matching_signature) >= 2
) a
ORDER BY literal_sql_cnt DESC
)
WHERE rownum <= 100
;
|
cs |
반응형
'[DATABASE] ORACLE > SQL Tuning' 카테고리의 다른 글
1. SQL 분석 도구 (0) | 2022.09.28 |
---|---|
[Oracle] SQL 수행통계 확인 (Top-N SQL) (0) | 2022.08.19 |
인덱스 컬럼 좌변 가공 제거 (0) | 2022.07.15 |
Single Block I/O 성능 측정 (0) | 2022.06.15 |
특정 SQL을 Shared Pool에서 Flush (0) | 2022.01.13 |
댓글