¡¡¡¡1:¼ì²éϵͳ
sar -u 5 5
¡¡¡¡2: ¿´ËÔÚÓÃCPU
topas
ps -ef |grep ora #¼ì²éµÚËÄÁУ¬CµÄ´óС£¨unit£¬100 per cpu£©
¡¡¡¡3:¼ì²éCPUÊýÁ¿
/usr/sbin/bindprocessor -q
¡¡¡¡
lsattr El proc0
¡¡¡¡4:Á½ÖÖ¿ÉÄÜ£º
1: A Background (instance) process
¡¡¡¡
2: An oracle (user) process ££´ËÖÖ¿ÉÄÜ×î´ó¡£
¡¡¡¡5: Èç¹ûÊÇÓû§½ø³Ì£ºÄÇô¸ßCPUµÄÖ÷ÒªÔÒòÓУº
Large Queries, Procedure compilation or execution,
Space management and Sorting
¡¡¡¡5.1 ²é¿´Ã¿¸öSessionµÄCPUÀûÓÃÇé¿ö£º
select ss.sid,se.command,ss.value CPU ,se.username,se.program
from v$sesstat ss, v$session se
where ss.statistic# in
(select statistic#
from v$statname
where name = 'CPU used by this session')
and se.sid=ss.sid
and ss.sid>6
order by ss.sid
¡¡¡¡5.2: ±È½ÏÉÏÊöSession
¡¡¡¡±È½ÏÒ»ÏÂÄĸösessionµÄCPUʹÓÃʱ¼ä×î¶à£¬È»ºó²é¿´¸ÃSessionµÄ¾ßÌåÇé¿ö£º
select s.sid, event, wait_time, w.seq#, q.sql_text
from v$session_wait w, v$session s, v$process p, v$sqlarea q
where s.paddr=p.addr and
s.sid=&p and
s.sql_address=q.address;
¡¡¡¡5.3:²é¿´
¡¡¡¡µÃµ½ÉÏÊöÐÅÏ¢ºó£¬²é¿´ÏàÓ¦²Ù×÷ÊÇ·ñÓÐhash joins ºÍ full table scans¡£Èç¹ûÓÐhash joins ºÍ full table scansÄÇô±ØÐë´´½¨ÏàÓ¦µÄIndex»òÕß¼ì²éIndexÊÇ·ñÓÐЧ¡£
¡¡¡¡ÁíÍâ±ØÐë¼ì²éÊÇ·ñÓв¢ÐеIJéѯ´æÔÚºÍͬһʱ¿ÌÓжà¸öÓû§ÔÚÖ´ÐÐÏàͬµÄSQLÓï¾ä£¬Èç¹ûÓбØÐë¹Ø±Õ²¢ÐеIJéѯºÍÈκÎÀàÐ͵IJ¢ÐÐÌáʾ(hints);Èç¹û²éѯʹÓÃintermediaÊý¾Ý£¬ÄÇôΪÁ˼õÉÙ×ܵÄIndex´óС£¬±ØÐëÏÞÖÆʹÓÃIntermediaµÄWorldlist¡££¨try restricting the wordlist that intermedia uses to help reduce the total indexsize£©¡£
¡¡¡¡6:×¢ÒâÊÂÏî
¡¡¡¡ÉÏÊö·½°¸Ö»Äܸù¾ÝÒѾÔËÐÐÍê³ÉµÄ²Ù×÷£¬¶ÔÓÚÕýÔÚÖ´Ðеij¤Ê±¼ä²Ù×÷Ö»ÄܵȲÙ×÷Íê³Éºó²ÅÄܼì²âµÃµ½¡£Òò´ËÎÒÃÇ¿ÉÒÔͨ¹ýÁíÍâÒ»¸öºÜºÃµÄ¹¤¾ßÀ´¼ì²âÕýÔÚÔËÐеij¤Ê±¼ä²Ù×÷Óï¾ä¡£v$session_longops,Õâ¸öÊÓͼÏÔʾÄÇЩ²Ù×÷ÕýÔÚ±»ÔËÐУ¬»òÕßÒѾÍê³É¡£Ã¿¸öprocessÍê³Éºó»áˢб¾ÊÓͼµÄÐÅÏ¢¡£
¡¡¡¡7:ÔõÑùÑ°ÕÒ¼¯ÖÐʹÓÃCPUµÄProcess£º
¡¡¡¡ºÜ¶àʱºò»á·¢ÏÖÓÐN¸öProcessÔÚƽ¾ù·ÖÏí×ÅCPUµÄÀûÓÃÂÊ£¬ÕâÖÖÇé¿öΨһµÄ¿ÉÄÜÐÔ¾ÍÊÇÕâЩProcessÔÚÖ´ÐÐ×ÅÏàͬµÄPackage»òÕßQuery.
¡¡¡¡ÕâÖÖÇé¿ö£º½¨Òéͨ¹ýstatspack,ÔÚCPU¸ßÀûÓÃÂʶîʱºòÔËÐм¸¸ö¿ìÕÕ£¬È»ºó¸ù¾ÝÕâЩ¿ìÕÕ¼ì²éStatspack±¨¸æ£¬¼ì²é±¨¸æÖÐ×îTOPµÄQuery¡£È»ºóʹÓà sql_trace and tkprof ¹¤¾ßÈ¥¸ú×Ùһϡ£
¡¡¡¡Í¬Ê±¼ì²ébuffer cache µÄÃüÖÐÂÊÊÇ·ñ´óÓê95£¥¡£
¡¡¡¡Í¬Ê±ÔÚ±¨¸æÖл¹ÐèÒª¼ì²éÒ»ÏÂtable scans (long tables)£¬¿´ÊÇ·ñÔÚ±¨¸æÉú³ÉÆÚ¼äÓдæÔÚÈ«±íɨÃè¡£
¡¡¡¡8:²ÎÊý
¡¡¡¡ÁíÍ⻹ÓÐһЩ²»ÊÇÌرðÖØÒªµÄ£¬µ«ÊÇÒ²±ØÐë¹ØÐļì²éµÄ²ÎÊý¿ÉÄÜÏûºÄCPU¡£
¡¡¡¡parallel query ²¢Ðвéѯ£º
¡¡¡¡²¢Ðвéѯ×îºÃÓÃÓÚÊý¾Ý²Ö¿âµÄ»·¾³Ï£¬ÄÇÖÖÇé¿öÈκÎʱºòÖ»Óм¸¸öÓû§ÔÚͬʱʹÓá£ÔÚÒ»¸öÁª»úÊÂÎñ´¦Àí»·¾³ÖУ¬µ±Í¬Ê±Ðí¶àÓû§È¥²¢Ðвéѯһ¸öÊý¾Ý¿âµÄ¾Þ´ó±íʱºò£¬»áµ¼ÖÂCPUµÄ±¬Âú¡£ËùÒÔ×îºÃÔÚÊý¾Ý¿âµÄ¼¶±ð¹Ø±Õ²¢Ðвéѯ£ºÉèÖòÎÊýÈçÏ£º
parallel_min_server = 0¡¡¡¡parallel_max_server = 0¡¡¡¡
parallel_automatic_tuning = false;
¡¡¡¡ÔÚÅäÖÃÉÏÊö²ÎÊýºó£¬Èç¹ûSQLÓï¾äÖÐʹÓõIJ¢ÐеÄÌáʾ£¬ÄÇô»¹ÊÇÓпÉÄÜ»á³öÏÖ²¢ÐвéѯµÄÇé¿ö£¬ËùÒÔ»¹ÐèÒª¼ÌÐø¼àÊÓÏà¹ØµÄSQLÓï¾ä£¬Èç¹ûÓпÉÒÔÖ±½ÓÈ¥³ýÌáʾ¡£