oracle查询cpu占用率高,ORACLE杀掉cpu占用率高的session
SPID一一system process id,表示該server
process在OS層面的Porcess ID
PID一一Oracle process
id,可以理解Oracle給自己的進(jìn)程的一個(gè)編號(hào)
SID一一SESSION標(biāo)識(shí),常用于連接其它列,理解為有在和oracle連接會(huì)話時(shí)oracle為其分配的一個(gè)編號(hào)
ADDR----進(jìn)程對象地址
paddr----process addr,
通過這個(gè)字段我們可以查看當(dāng)前進(jìn)程的相關(guān)信息, 系統(tǒng)進(jìn)程id,操作系統(tǒng)用戶信息等
根據(jù)sid查詢sql語句的spid
select b.spid,a.sid,a.serial#,a.machine
from v$session a,v$process b where a.paddr
=b.addr?and a.sid = '&sid';
根據(jù)sid查詢sql語句的OS里進(jìn)程號(hào),可以用kill
-9來殺
SQL> select spid, osuser, s.program from v$session
s,v$process p where s.paddr=p.addr and s.sid=631;
=============
通過進(jìn)程號(hào)spid找sql語句的方法
1. select sid from v$session where paddr = (select addr from
v$process where spid = &spid);
然后輸入spid,得到對應(yīng)的sid (session id)
2. select sql_text from v$sqltext where address = (select
sql_address from v$session where sid = &sid) order by
piece;
輸入剛才得到的sid,的確可以得到sql語句。如果感覺輸入麻煩,比較簡單的方法是開2個(gè)sqlplus順序執(zhí)行。
===============
1. 使用top或者 glance
查看占用cpu資源高的oralce進(jìn)程
將進(jìn)程PID記下--spid
2. 將查到的結(jié)果記下ADDR
sql>select ADDR from v$process where
spid=PID;
3. 將查到的sid 和serial#記下
sql>select sid, serial# from v$session
where paddr='ADDR';
(
PS也可直接按sid查
SQL>select sid,serial# from v$session
where sid=XXX;
)
4. 可以進(jìn)一步確認(rèn)sql語句
輸入SID號(hào)查sql語句
select sql_text from v$sqlarea where
(hash_value,address)=(select sql_hash_value,sql_address from
v$session where sid=&sid);
下例:
SID=輸入SID 224
update sdi_t_ccms_image t set t.reserve1 = null, t.obtain_time =
sysdate where t.reserve1 = '1' and t.status = 202 and t.obtainer =
'028'
5. 確定后殺
sql>alter system kill session
'sid,serial#';
==========================================
以下附例子
---
PROCESS
LIST?Users=?5
User?CPU %?Thrd
Disk?Memory?Block
Process
Name?PID?Name?( 400% max)
Cnt?IOrate?RSS/VSS?On
--------------------------------------------------------------------------------
oraclecardmi?22087
oracle?37.0?1?0.2?85.7mb?105.4mb?PRI
oraclecardmi?22093
oracle?36.1?1?0.2?85.7mb?89.4mb?PRI
oraclecardmi?22103
oracle?35.3?1?0.0?86.7mb
總結(jié)
以上是生活随笔為你收集整理的oracle查询cpu占用率高,ORACLE杀掉cpu占用率高的session的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “中国复眼”二期开工!事关我国近地小行星
- 下一篇: 消息称苹果对 NBA 流媒体版权感兴趣