Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: High CPU usage by Oracle
Thanks, Michael and Jared for the scripts. I really appreciate the help. Kirti thanks for the metalink references for figuring out the reason the database shutdown was hanging. I still have not finished processing all the information I have received. However I will do so and let you all know what happens.
Thanks for all the help. Its kind of overwhelming to know there are so many
people out there who want to help you to get your job done. Thanks guys. I
really appreciate it!
-Uma
-----Original Message-----
Sent: Tuesday, January 22, 2002 2:10 PM
To: Multiple recipients of list ORACLE-L
Here's a Korn Shell script that I use to identify all of the top CPU hogs in Solaris. It is better than "top" because it gives you the actual command that is running:
#!/bin/ksh
# Show the PS version of the top 37 processes (by CPU usage)
print "UID\tPID\tPPID\tSTIME\t\tTIME\tCMD"
top -n 37 2>/dev/null| tail -38 | head -37 | awk '{print $1}' | while read
PID
do
PS=`ps -fp $PID 2>/dev/null| tail -1`
if [[ `echo $PS | grep -c "UID PID PPID C STIME TTY TIME CMD"` -ne 1 ]]
then
echo $PS | awk '{for (i = 8; i <= NF; i++) O = O " " $i; print $1 "\t"
$2 "\t" $3 "\t" $5 "\t" $7 "\t
" substr(O,2,59)}'
fi
done
--Michael
-----Original Message-----
Sent: Tuesday, January 22, 2002 1:26 PM
To: Multiple recipients of list ORACLE-L
This query will show current sessions CPU usage. It may indicate a particular session is hogging the CPU.
select
sess.username, stat.sid, name.name name,
stat.sid = sess.sid
and stat.statistic# = name.statistic#
and name.name like '%CPU%'
group by sess.username, stat.sid, name.name;
You should also use 'top' or some similar tool to identify the process.
At times a session may have a 'runaway' process that is hogging the CPU. If a single dedicated server process is using a very high percentage of the CPU, it's would probably be a good idea to kill it. Be sure to identify the user or batch program first to make sure it can be killed.
The output of 'ps -fuoracle' will show a dedicated session as similar to this:
oracleVDRPROD (DESCRIPTION=(LOCAL=no)(ADDRESS=(PROTOCOL=BEQ)))
The following query will match an
process to an Oracle session:
select
s.username, s.sid, s.serial#, p.pid ppid, s.status, s.osuser,
Jared
Uma Mohoni <umohoni_at_ikimbo.com>
Sent by: root_at_fatcity.com
01/22/02 07:20 AM
Please respond to ORACLE-L
To: Multiple recipients of list ORACLE-L <ORACLE-L_at_fatcity.com> cc: Subject: High CPU usage by Oracle
Hi,
I would like help with this problem I am grappling with since yesterday.
One
of the test boxes with Sun Solaris 2.7 OS and Oracle 8.1.7.2 on it has
started showing 97% and above CPU usage mostly by Oracle . It has slowed
down the application to a point where the testers can not test. Does any
one
have any idea why Oracle would suddenly hog CPU so much? The normal CPU
usage on these boxes is 2%-3%. All help is greatly appreciated. Thanks in
advance.
Thanks,
Uma Mohoni
Consultant, CDI Corporation
@ iKimbo Inc.
500-A Huntmar Park Drive
Herndon, VA 20170
(703) 904-4150 Ext:237
umohoni_at_ikimbo.com
-- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Uma Mohoni INET: umohoni_at_ikimbo.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: INET: Jared.Still_at_radisys.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Jenkins, Michael INET: Michael.Jenkins_at_Nextel.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Uma Mohoni INET: umohoni_at_ikimbo.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Tue Jan 22 2002 - 13:54:54 CST