select로 인한 hotblock 경합 응급조치법~


oracle 운영은 첨이라 하나하나가 새롭다. 일단 흔히들 보는 hotblock 경합부터.

select문에 의한 latch: cache buffer chain 경합이면 쿼리 튜닝해야 하는데. (SQL Server에서는 PAGELATCH:SH경합 되겠다)

일단 튀는 쿼리 찾는거는 아래 스크립트

SELECT session_id, sql_id,cnt, NVL((select sql_text FROM v$sqlarea b WHERE a.sql_id=b.sql_id),'<EMPTY>')   sql_text
FROM (
      SELECT session_id, sql_id, COUNT(*) cnt
      FROM v$active_session_history
      WHERE session_state = 'ON CPU'
      AND sample_time > SYSDATE - (5 / (24 * 60 ))
      AND sql_id is not null
      GROUP BY session_id, sql_id
      ORDER BY COUNT(*) DESC) a
WHERE ROWNUM <= 50 ;


왠만하면 같은 쿼리가 주욱~ 나올건데, 일단 이넘을 잡자~

근데 이거하기전에 Front WAS는 거의 사망직전까지 간다. 진정시키려면 일단 경합이 일어난 블럭부터 찾자.

select sid,p1raw||', '||event||', '||p1text||', '||p1||', '||p2text||', '||p2||'
, '||p3text||', '||p3 as event
from v$session_Wait
where event not like '%SQL%' and event not like '%rdbms%'
and wait_class != 'Idle'
order by seconds_in_wait desc


p1raw가 경합이 일어난 블럭주소당... 이 블럭에 어떤 오브젝트들이 있는지 찾으려면~

select hladdr,
  obj,
  (
    select object_name
    from dba_objects
    where (data_object_id is null
          and object_id=x.obj)
      or data_object_id=x.obj
      and rownum = 1) as object_name,
  dbarfil,
  dbablk,
  tch
from x$bh x
where hladdr in ('C0000003177DC0D0')
order by hladdr, obj;


여기에 p1raw값 넣으면 이 블럭에 있는 오브젝트들이 나온다. 여기서 터치카운트가 높은 인덱스나 테이블이 있을건데, 아까 전에 뽑은 쿼리에서 건드리는 인덱스 / 테이블일 가능성이 높다.

만약 인덱스라면...

1. 응급조치로 alter index ... 해서 storage를 keep_pool 로 바꿔버리자. 재수좋으면 일시적으로 hotblock 경합이 사라진다.

2. 이게 안되면 시간이 좀 걸리겠지만 pctfree를 충분히 (50?) 주고 index online rebuild


저렇게 해놓고 시간 벌어놓은 다음에 급하게 쿼리 튜닝해서 WAS 패치하자~

Posted by maceo

07 27, 2008 01:42 07 27, 2008 01:42
,
Response
No Trackback , No Comment
RSS :
http://merritt.co.kr/tt/rss/response/115

Trackback URL : http://merritt.co.kr/tt/trackback/115

Leave a comment
[로그인][오픈아이디란?]
« Previous : 1 : ... 13 : 14 : 15 : 16 : 17 : 18 : 19 : 20 : Next »

블로그 이미지

가늘어도 긴놈이 장땡

- maceo

Archives

Authors

  1. maceo

Calendar

«   9 2010   »
      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    

Site Stats

Total hits:
179884
Today:
3
Yesterday:
35