茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1670086 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
HoiHoiSan_00002.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

DB研討會 : [轉貼]查看 Oracle CPU 情況

發表者 討論內容
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[轉貼]查看 Oracle CPU 情況

查看Oracle CPU情況

--發現那些SQL運行了大量的PARSE
select sql_text, parse_calls, executions from v$sqlarea order by parse_calls desc;
--SYS的總的PARSE情況
select name, value from v$sysstat where name like 'parse count%';

 

--CPU空間及繁忙情況
select * from v$osstat;

 

--查看每個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 CPU desc;

 

--比較一下哪個session的CPU使用時間最多,然後查看該Session的具體情況:
select s.sid, s.event, s.MACHINE,s.OSUSER,s.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;
---佔用CPU最高的10個Session及其SQL語句
select s.sid,w.wait_time,w.seconds_in_wait,w.state,w.wait_time_micro,w.time_remaining_micro,w.time_since_last_wait_micro,p.USERNAME,
status,server,schemaname,osuser,machine,p.terminal,p.program,logon_time,w.event,w.wait_class,tracefile,sql_text,last_active_time
from v$session_wait w, v$session s, v$process p, v$sqlarea q
where s.paddr=p.addr and
s.sid
in
( select sid from

(
select ss.sid
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.value desc
)where rownum<11
)
and s.sql_address=q.address;

原文出處:查看Oracle CPU情況 @ 資訊園 :: 痞客邦 ::
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[轉貼]找出 oracle 的 Process 在 CPU 的使用率並且加總
找出oracle的Process 在CPU的使用率並且加總

下列Script是找出ora的Process在CPU的使用率並且加總,放在/tmp/top_sum.log,也就是Oracle的CPU使用率。
#!/bin/sh
DAY=`date "+%Y%m%d"`
OUT="$HOSTNAME"_"$DAY"_ORA.log
TIME=`date "+%H:%M"`
top -s 1 -n 1500 -f /tmp/top.log -d 1
export sum=`awk 'BEGIN{sm=0}{if($13~/ora/) sm+=$12}END{print sm}' /tmp/top.log`
rm /tmp/top.log
echo "$TIME     $sum" >> /tmp/top_sum.log


原文出處:找出oracle的Process 在CPU的使用率並且加總
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[轉貼]Show CPU Usage for Active Sessions
Show CPU Usage for Active Sessions
--
-- Show CPU Usage for Active Sessions
--

SET PAUSE ON
SET PAUSE 'Press Return to Continue'
SET PAGESIZE 60
SET LINESIZE 300

COLUMN username FORMAT A30
COLUMN sid FORMAT 999,999,999
COLUMN serial# FORMAT 999,999,999
COLUMN "cpu usage (seconds)"  FORMAT 999,999,999.0000

SELECT
   s.username,
   t.sid,
   s.serial#,
   SUM(VALUE/100) as "cpu usage (seconds)"
FROM
   v$session s,
   v$sesstat t,
   v$statname n
WHERE
   t.STATISTIC# = n.STATISTIC#
AND
   NAME like '%CPU used by this session%'
AND
   t.SID = s.SID
AND
   s.status='ACTIVE'
AND
   s.username is not null
GROUP BY username,t.sid,s.serial#


原文出處:Show CPU Usage for Active Sessions - Oracle Database
前一個主題 | 下一個主題 | 頁首 | | |



Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|