HOME   ·Î±×ÀΠ  ȸ¿ø°¡ÀÔ
    
ȸ¿ø°¡ÀÔ
ºñ¹Ð¹øÈ£ ã±â ÀÚµ¿·Î±ä
ÀÌÀü°Ô½ÃÆÇ
   free_board
   °Ç°­°Ô½ÃÆÇ
   ¿À¶óŬDB
   Linux
   HTML/javascript
   Áú¹®°ú ´ä
È£¼­±â
   À̹ÌÁö°Ô½ÃÆÇ  
   °Ç°­°Ô½ÃÆÇ  
   À½¾ÇÀÚ·á  
   ¼ºÁØÀÌ °Ô½ÃÆÇ  
[ÀϹÝ] [SQL] ¿À¶óŬ ¼ÓµµÀúÇÏ ¹®Á¦ ÃßÃâ
  È£¼® ´Ô²²¼­ ¾´ ±ÛÀÔ´Ï´Ù - 211.¢½.74.31 ÀÐÀ½:5368  
http://www.oracle.com/technology/global/kr/pub/columns/dbtuning.html

Oracle Wait Event ¸ð´ÏÅ͸µ

±Û: ¾ÈÁøö (jcahn@warevalley.com)
úÞ ¢ß¿þ¾î¹ë¸® Ã¥ÀÓ ÄÁ¼³ÅÏÆ®
îñ LG-EDS ±â¼ú ¿¬±¸ºÎ¹® DB ÆÀ
- ¼Ö·ç¼Ç ÄÁ¼³Æà °æ·Â 6³â 

¿¬Àç ¼ø¼­

[1] Oracle Wait Event ¸ð´ÏÅ͸µ (2003³â 1¿ù 28ÀÏ)
[2] Enqueue¿Í Latch (2003³â 2¿ù 12ÀÏ)
[3] Shared Pool °ü·Ã Wait Event (2003³â 2¿ù 26ÀÏ)
[4] buffer cache °ü·Ã Wait Event (2003³â 3¿ù 12ÀÏ)
[5] redo log °ü·Ã Wait Event (2003³â 3¿ù 26ÀÏ)
[6] Top SQL Æ©´× (2003³â 4¿ù 9ÀÏ)



 

[1] Oracle Wait Event ¸ð´ÏÅ͸µ

ÈçÈ÷ DBA¸¦ 3D¾÷Á¾À̶ó°í ºÎ¸£´Â ÀÌÀ¯ °¡¿îµ¥ Çϳª´Â ¸öÀº °í´Þǵ¥ ¹ÝÇØ ±× ¼º°ú°¡ º°·Î Ƽ°¡ ³ªÁö ¾Ê´Â´Ù´Â »ç½Ç ¶§¹®ÀÏ °ÍÀÌ´Ù. ½ÇÁ¦·Î, DBA°¡ ¼öÇàÇØ¾ß ÇÏ´Â ÀÏ»óÀûÀÎ °ü¸® ¾÷¹«µéÀº ¸öÀº ´Ù¼Ò ÇÇ°ïÇÏ°Ô ¸¸µéÁö ¸ô¶óµµ ¾î´À Á¤µµ °æÇèÀÌ ½×ÀÌ¸é ±×¸® ºÎ´ãÀ» ÁÖ´Â ÀÏÀº ¾Æ´Ï´Ù. ¿ì¸®°¡ ÇÑ´Ü°è ¾÷±×·¹À̵åµÈ Àü¹®°¡·Î¼­ ÀÎÁ¤ ¹Þ´Â DBA°¡ µÇ±â À§Çؼ­´Â Àå¾Ö»óȲ ȤÀº À¯»ç Àå¾Ö »óȲ¿¡¼­ DB ¸ð´ÏÅ͸µ ÀÛ¾÷À» ¼öÇàÇÏ°í ºÐ¼®ÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ½Ã½ºÅÛÀÌ °©Àڱ⠴À·ÁÁö°í ¾÷¹«°¡ ¸¶ºñµÇ´Â »óȲ¿¡ ¸Â´Ú¶ß·ÈÀ» ¶§ ¹®Á¦ÀÇ ¿øÀÎÀÌ ¹«¾ùÀÎÁö¸¦ Áý¾î³¾ ¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ¾î¾ß Çϸç ÃÖ¼ÒÇÑ ¿À¶óŬÀÇ ¹®Á¦ÀÎÁö ¾Æ´ÑÁö¸¦ ÆÇ´ÜÇÒ ¼ö´Â ÀÖ¾î¾ß ¸öÀ¸·Î ¾ß°£ÀÛ¾÷À̳ª ¶§¿ì´Â DBA°¡ ¾Æ´Ï¶ó Á¶Á÷¿¡ ¾ø¾î¼­´Â ¾ÈµÉ Àü¹®°¡·Î¼­ÀÇ ³ªÀÇ Á¸Àç°¡Ä¡¸¦ ÀÎÁ¤ ¹ÞÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù.

ÀÌ ±Û¿¡¼­´Â ¿À¶óŬ Wait Event¿¡ ´ëÇÏ¿© °£´ÜÈ÷ ¾Ë¾Æº¸°í ÀϽÃÀûÀÎ ¼º´ÉÀúÇÏ »óȲ¿¡¼­ Wait Event¸¦ ¸ð´ÏÅ͸µÇÏ°í ±× ¿øÀÎÀ» ã¾Æ°¡´Â ¹æ¹ý¿¡ ´ëÇÏ¿© ´Ù·ç¾î º¸°íÀÚ ÇÑ´Ù. ªÀº Áö¸é À§¿¡ ´Ù·ê ¼ö ÀÖ´Â ³»¿ëµµ Á¦ÇѵǾî ÀÖ°í ±Û¾´ÀÌÀÇ Áö½Ä ¶ÇÇÑ ÀÏõÇÏÁö¸¸ ¿À¶óŬ Àü¹®°¡°¡ µÇ±â À§ÇØ °°Àº ±æÀ» °¡°í ÀÖ´Â µ¿·á·Î¼­ °¡Áø Áö½Ä ¸î °¡Áö °øÀ¯ÇÑ´Ù´Â ÃëÁö·Î ÀÌ ±ÛÀ» ¾´´Ù.

¿À¶óŬÀÇ Wait Event Á¤º¸´Â V$SYSTEM_EVENT, V$SESSION_EVENT, V$SESSION_WAIT µîÀÌ Àִµ¥, ÀÌ °¡¿îµ¥ V$SESSION_WAIT´Â °¢ ¼¼¼ÇÀÌ ÇöÀç Waiting ÇÏ°í ÀÖ´Â Event³ª ¸¶Áö¸·À¸·Î WaitÇÑ Event Á¤º¸¸¦ º¸°üÇÏ°í ÀÖÀ¸¸ç, V$SYSTEM_EVENT¿Í V$SESSION_EVENT´Â ½Ã½ºÅÛÀÌ StartupµÈ ÀÌÈÄ °¢°¢ ½Ã½ºÅÛ Àüü, ȤÀº ¼¼¼Çº°·Î ¹ß»ýÇÑ Wait Event Á¤º¸¸¦ ´©ÀûÇÏ¿© ±â·ÏÇÏ°í ÀÖ´Ù.

¿À¶óŬÀÇ Wait Event´Â ¼º°Ý¿¡ µû¶ó Network±³½ÅÀ̳ª IO¸¦ À§ÇØ ´ë±âÇÏ´Â ÀÏ»óÀûÀÎ Wait¿Í ƯÁ¤ ÀÚ¿ø¿¡ ´ëÇØ ¿©·¯ ÇÁ·Î¼¼½º°¡ µ¿½Ã¿¡ ¾×¼¼½ºÇÏ°íÀÚ ÇÒ ¶§ ¹ß»ýÇÏ´Â Wait, º°´Þ¸® ÇÒ ÀÏÀÌ ¾ø¾î ´ë±âÇÏ°í ÀÖ´Â Idle Wait µî ¼¼°¡Áö À¯ÇüÀ¸·Î ±¸ºÐÇÒ ¼ö Àִµ¥ ±× À¯Çü¿¡ µû¶ó Çؼ®¹æ¹ýµµ ´Þ¶óÁø´Ù. ÀÏ´Ü, Idle Wait´Â ÀϹÝÀûÀÎ °ü½ÉÀÇ ´ë»ó¿¡¼­ Á¦¿ÜµÇ¸ç IO³ª Network °ü·Ã Wait´Â ÀÛ¾÷·®ÀÌ Áõ°¡ÇÏ¸é °°ÀÌ Áõ°¡ÇÏ´Â WaitÀ̹ǷΠÀüü ¼­ºñ½º ½Ã°£(CPU time)°ú ºñ±³ÇÏ¿© »ó´ëÀûÀ¸·Î Æò°¡ÇØ¾ß Çϸç ÃÑ Wait timeº¸´Ù´Â Æò±Õ Wait Time¿¡ °ü½ÉÀ» µÎ°í ºÐ¼®À» ÇØ¾ß ÇÒ °ÍÀÌ´Ù. ½Ã½ºÅÛ ÀÚ¿ø¿¡ ´ëÇÑ Wait´Â µ¥ÀÌÅͺ£À̽º ¼­¹ö Æ©´×½Ã °¡Àå ÁÖµÈ °ü½É ´ë»óÀÌ µÇ¸ç À̵é Wait¿¡ ´ëÇؼ­´Â Æò±Õ Wait Time»Ó¸¸ ¾Æ´Ï¶ó ÃÑ Wait Time¿¡µµ °ü½ÉÀ» °¡Áö°í ºÐ¼®ÇØ¾ß ÇÒ °ÍÀÌ´Ù. À¯Çüº°·Î ´ëÇ¥ÀûÀÎ Wait Event¸¦ »ìÆ캻´Ù¸é ¾Æ·¡¿Í °°´Ù.


[ÁÖ¿ä Wait Event] ±¸ºÐ À̺¥Æ®¸í ¼³ ¸í
ÀÏ»óÀûÀÎ Wait Event  db file scattered read Full Scan½Ã OS¿¡ I/O¸¦ ¿äûÇسõ°í ´ë±â
db file sequential read Index Scan½Ã OS¿¡ I/O¸¦ ¿äûÇسõ°í ´ë±â
(IO, Network) log file sync º¯°æ log buffer¸¦ log file¿¡ ¹Ý¿µÇÏ´Â µ¿¾È ´ë±â
DFS lock handle OPS ȯ°æ¿¡¼­ ³ëµå°£ ºÐ»ê Lock ±³È¯¿¡ µû¸¥ ´ë±â
global cache cr request OPS ȯ°æ¿¡¼­ ³ëµå°£ Buffer Block ±³È¯¿¡ ÀÇÇÑ ´ë±â
ÀÚ¿ø °æÇÕ¿¡ µû¸¥
Wait Event          enqueue Type¿¡ µû¶ó ¼¼ºÐÈ­ (24°³ÀÇ enqueue type (9i))
latch free Name¿¡ µû¶ó ¼¼ºÐÈ­ (239°³ÀÇ latch°¡ Á¸Àç (9i))
buffer busy waits µ¿ÀϺí·Ï¿¡ ´ëÇÑ µ¿½Ã ¾×¼¼½º¿¡ µû¸¥ °æÇÕ
free buffer waits free buffer¸¦ ÇÒ´çÀ§ÇØ DBWRÀÇ Write¸¦ ´ë±â
Log buffer space Log buffer¸¦ ÇÒ´ç ¹Þ±â À§ÇØ LGWRÀÇ write¸¦ ´ë±â
library cache lock SGA³»ÀÇ library cache¸¦ ÂüÁ¶Çϱâ À§ÇÑ ´ë±â(°Ë»ö)
row cache lock SGA³»ÀÇ dictionary cache¸¦ ÂüÁ¶Çϱâ À§ÇÑ ´ë±â
Idle Event  SQL*Net message from client Client·ÎºÎÅÍÀÇ ÀÛ¾÷¿äûÀ» ´ë±â
Pmon timer PMONÀÌ ÇÒÀÏ ¾øÀ» ¶§ ´ë±âÇÏ´Â Event

¾÷¹«½Ã°£´ë¿¡ ½Ã½ºÅÛÀÌ °©Àڱ⠴À·ÁÁ³´Ù¸é¼­ ¿À¶óŬ ¼­¹ö¿¡ ¹®Á¦°¡ ¾ø´ÂÁö ¹®ÀÇ°¡ µé¾î¿À¸é ±Û¾´ÀÌ´Â ¿ì¼± ¾Æ·¡ÀÇ SQLÀ» ¼öÇà½ÃÄѺ»´Ù.

select /*+ ordered / distinct /* ¼Óµµ¸¦ À§ÇØ v$sqlÀ» Á¶ÀÎÇÒ °æ¿ì Áߺ¹µÇ´Â ·¹ÄÚµå Á¦°Å */
           s.sid SID, s.username, s.program, p.spid "OS-Pid",w.seconds_in_wait as "W_time(Sec)",
          decode(w.wait_time,0,'Wai-ting', 'Waited') Status, w.ename event,
--              p1text || ':' || decode(event,'latch free',p1raw, to_char(p1)) ||','||
--              p2text || ':' || to_char(p2) ||','|| p3text || ':' || to_char(p3) "Additional Info",
           q.sql_text
from ( select a.*, decode(a.event,'latch free', 'latch free (' ||b.name||')',
                                         'row cache lock', 'row cache lock (' || c.parameter || ')',
                                         'enqueue', 'enqueue ('||chr(bitand(p1, -16777216)/16777215)||
                                                                             chr(bitand(p1,16711680)/65535)||':'||
                                                decode(bitand(p1,65535), 1, 'N', 2, 'SS',3,'SX',4,'S',5,'SSX',6,'X') ||')',
                              a.event ) ename
           from v$session_wait a, v$latchname b, v$rowcache c
         where a.p2 = b.latch#(+) and a.p1 = c.cache#(+) and c.type(+) = 'PARENT'
           and a.event not in ('rdbms ipc message','smon timer','pmon timer','slave wait','pipe get','null event',
                                     'SQL*Net message from client', 'SQL*Net message to client','PX Idle Wait',
                                      'PX Deq: Execution Msg', 'KXFQ: kxfqdeq - normal deqeue',
                                         'ges remote message', 'wakeup time manager', /* idle event ÀûÀýÈ÷ ¼öÁ¤ */
                                         'lock manager wait for remote message', 'single-task message')
        ) w, v$session s, v$process p, v$sql q
where w.sid = s.sid and s.paddr = p.addr
and s.sql_hash_value = q.hash_value(+) and s.sql_address = q.address(+)
order by w.ename;
 

SQLÀÇ ±¸Ã¼ÀûÀÎ ³»¿ëÀÌ¾ß ÇÊ¿äÇÑ Á¤º¸¿Í °³ÀÎÀû ÃëÇâ¿¡ µû¶ó ´Þ¶óÁö°ÚÁö¸¸, Áß¿äÇÑ °ÍÀº ÀÏ´Ü V$SESSION_WAIT ºä·ÎºÎÅÍ ½Ç½Ã°£ Wait Event Á¤º¸¸¦ ¾ò¾î³½´Ù´Â °ÍÀÌ´Ù. À§ SQLÀ» ¼öÇàÇßÀ» ¶§ ³ªÅ¸³ª´Â °á°ú°¡ ¾ø´Ù¸é ÀÏ´Ü ¿À¶óŬ Ãø¸é¿¡¼­ ¾÷¹«¼º´ÉÀ» ½É°¢ÇÏ°Ô ¸¶ºñ½ÃÅ°´Â WaitingÀÌ ¹ß»ýÇÏ°í ÀÖÁö ¾Ê´Ù°í ºÁµµ Å« ¹«¸®°¡ ¾øÀ» °ÍÀÌ´Ù.

ÀϹÝÀûÀÎ »óÅ¿¡¼­´Â ÁÖ·Î 'db file sequential read'³ª 'db file scattered read' °¡ ³ªÅ¸³¯ ÅÙµ¥, ÀÌ·¯ÇÑ Wait Event´Â º¸Åë ªÀº ½Ã°£ µ¿¾È Áö¼ÓµÇ¸ç ´ë»ó ÀÚ¿ø(ºí·Ï)À» ¹Ù²ã°¡¸ç Wait°¡ ¹Ýº¹µÇ´Â ÇüÅ·Π³ªÅ¸³¯ °ÍÀÌ´Ù. ÀÌ´Â ÀÛ¾÷ 󸮷®ÀÌ ¸¹À» ¶§ ÀÏ»óÀûÀ¸·Î ¹ß»ýÇÏ´Â IO°ü·Ã Wait EventÀ̹ǷΠÇØ´ç ¼¼¼Ç¿¡¼­ IO¸¦ Á¦¹ý ¸¹ÀÌ À¯¹ßÇÏ°í ÀÖ´Ù´Â Á¤µµ·Î ÀÌÇØÇÏ°í ³Ñ¾î°¡¸é µÉ °ÍÀÌ´Ù. ¹°·Ð, WaitÀÇ Áö¼Ó½Ã°£ÀÌ ±æ°Å³ª Áö³ªÄ¡°Ô ºó¹øÈ÷ ³ªÅ¸³ª´Â SQL¿¡ ´ëÇؼ­´Â ºñÈ¿À²ÀûÀÎ ½ÇÇà°èȹÀ» ¼ö¸³ÇÏ°í ÀÖÁö ¾ÊÀºÁö °ËÅäÇؼ­ Æ©´×ÇØ ÁÖ¾î¾ß ÇÑ´Ù.

¼º´ÉÀúÇÏÀÇ ¿øÀÎÀÌ ¿À¶óŬ ÂÊ¿¡ ÀÖ´Â °æ¿ì¿¡´Â ƯÁ¤ ÀÚ¿ø¿¡ ´ëÇÑ WaitingÀÌ »ó´çÈ÷ ¿À·§µ¿¾È Áö¼ÓµÇ¾î ÇöÀç±îÁö WaitingÀÌ ÁøÇà ÁßÀÎ ¼¼¼Çµé(STATUS°¡ 'Wai-ting' (wait_time=0)À̸ç 'W_time(sec)' (seconds_in_wait) °ªÀÌ »ó´çÈ÷ Å« ¼¼¼Ç)ÀÌ Á¸ÀçÇÒ °¡´É¼ºÀÌ ³ô´Ù. ¿À¶óŬÀÇ ³»ºÎÀûÀÎ ÀÛ¾÷µéÀº ¸Å¿ì ªÀº ±â°£¿¡ 󸮵Ǿî¾ß ÇϹǷÎ, Idle event(whereÀý¿¡¼­ not inÀ¸·Î ó¸®ÇÑ ºÎºÐ, ¹öÀü¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖ´Ù.) ÀÌ¿ÜÀÇ Æ¯Á¤ Wait Event°¡ ´«¿¡ ¶é Á¤µµ·Î °ËÃâµÈ´Ù´Â °ÍÀº ¿À¶óŬ ³»ºÎÀûÀ¸·Î´Â ÈξÀ ´õ ¸¹Àº WaitingÀÌ ¹ß»ýÇÏ°í ÀÖ´Ù°í »ý°¢ÇØ¾ß ÇÑ´Ù. ¹Ù·Î ÀÌ·± ¼¼¼ÇµéÀÌ ¹®Á¦ÀÇ ¹üÀεéÀ̸ç ÀÌÁ¦ºÎÅÍ DBA´Â À̵é Wait Event¿¡ ´ëÇÑ ¿øÀÎÀ» ÆľÇÇÏ¿© Á¶Ä¡ÇÏ´Â ÀÛ¾÷À» ÇØÁÖ¾î¾ß ÇÑ´Ù. °¢°¢ÀÇ Wait Event¿¡ µû¶ó ¿øÀÎÀ» ÃßÀûÇÏ°í Á¶Ä¡ÇÏ´Â ¹æ¹ýÀº ´Þ¶óÁú °ÍÀÌ´Ù.

´ÙÀ½ È£¿¡¼­´Â, ÀÚÁÖ °æÇèÇÏ´Â ¸î°¡Áö ´ëÇ¥ÀûÀÎ Wait Eventµé¿¡ ´ëÇÏ¿© SGA ¿µ¿ªº°·Î ±¸ºÐÇÏ¿© Á» ´õ ÀÚ¼¼È÷ »ìÆ캸°í, ±×¿¡ ¾Õ¼­ Lock ¶Ç´Â Latch EventÀÇ ÀÌÇظ¦ À§ÇØ ÇÊ¿äÇÑ Enqueue¿Í LatchÀÇ °³³äÀ» °£´ÜÈ÷ ¾Ë¾Æº¸µµ·Ï ÇÏ°Ú´Ù.


¸ñ·Ï

ºÐ·ù ¼±ÅÃ
ÀÏ¹Ý [SQL] ¿À¶óŬ ¼ÓµµÀúÇÏ ¹®Á¦ ÃßÃâ È£¼® 07-02-02 5369
63 ÀÏ¹Ý ¿À¶óŬ ÃʱâÈ­ ÆÄÀÏÀ» º¯°æÇؼ­ ¿ÀÇÂÇϱâ È£¼® 07-01-31 3475
62 ÀÏ¹Ý [Æ©´×] ¿À¶óŬ Æ©´× °ü·Ã Æß È£¼® 07-01-30 6261
61 ÀÏ¹Ý Åäµå 7.4 ±ò±¸³ª¼­ ¿¡·¯ ³ª¸é regedit ·Î Å°°ªÀ» º¯°æÇØ¾ßµÊ toad È£¼® 07-01-19 3946
60 ÀÏ¹Ý Äõ¸®¹æ½ÄÀ» ÀÌ¿ëÇÑ export dump data ¹Þ±â exp È£¼® 06-12-19 4034
59 ÀÏ¹Ý Æ©´×½ÎÀÌÆ® È£¼® 06-12-10 3613
58 ÀÏ¹Ý [ORA-06508] ¿¡·¯Ã³¸® È£¼® 06-09-05 6268
57 ÀÏ¹Ý [sql] Å×ÀÌºí ½ºÆäÀ̽º Á¤º¸ È®ÀÎ , Áõ°¡À²µµ È®ÀΠȣ¼® 06-08-17 11506
56 ÀÏ¹Ý ¿À¶óŬ È°¿ë¸í·É [ÀÎÅÍ³Ý ÂüÁ¶ÀÚ·á ] È£¼® 06-08-06 4370
55 ÀÏ¹Ý ¿À¶óŬ Á¤¸®ÀÚ·á sql [ÀÎÅÍ³Ý ÂüÁ¶ÀÚ·á ] È£¼® 06-08-06 4393
54 Áú¹® Á¶¾ðÀ» ºÎŹµå¸³µð´Ï´Ù. ³ªÁß¿¬ 06-07-26 2858
  ÀÏ¹Ý    Á¶¾ðÀ» ºÎŹµå¸³µð´Ï´Ù. È£¼® 06-08-06 3119
53 ÀÏ¹Ý ¿À¶óŬ Æ÷·³ .com ½ÎÀÌÆ® È£¼® 06-07-08 3376
52 ÀÏ¹Ý ÀÓÀÇ°èÁ¤À¸·Î sqlplus ½ÇÇà½Ã ¿¡·¯ ORA-27121 & Permission denied ÀÏ°æ¿ì È£¼® 06-06-28 4803
51 ÀÏ¹Ý XDB »èÁ¦ÈÄ ´Ù½Ã ¼³Ä¡Çϱâ (1) È£¼® 06-06-27 5323
óÀ½ÀÌÀü  [1] [2] [3] [4] [5] 6 [7] [8] [9] [10]  ´ÙÀ½¸Ç³¡

 
Copyright © zenos.pe.kr. All rights reserved.