OracleCPU使用情況查詢


 

 
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
--發現那些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;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM