主頁 > 知識庫 > 如何查詢占CPU高的oracle進(jìn)程

如何查詢占CPU高的oracle進(jìn)程

熱門標(biāo)簽:溫州人工外呼系統(tǒng) 外呼系統(tǒng)口號 地圖標(biāo)注付款了怎么找不到了 百度地圖標(biāo)注員是干什么 外呼系統(tǒng)鄭州 貴陽智能電銷機(jī)器人官網(wǎng) 北京外呼系統(tǒng)公司排名 沈陽400電話是如何辦理 北京營銷外呼系統(tǒng)廠家
oracle占用cpu過高怎么處理,本文將介紹有關(guān)oracle進(jìn)程CPU占用率過高的問題,需要了解跟多的朋友可以參考下
1:首先使用TOP命令傳到占用CPU高的SPID號
PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND
3575 oracle 1 12 0 0K 0K run 748.6H 24.98% oracle
3571 oracle 1 22 0 0K 0K sleep 706.2H 22.84% oracle

2:使用DBA賬戶登錄數(shù)據(jù)庫,使用以下SQL語句查詢:
SELECT * FROM V$PROCESS WHERE spid=3575;查詢到SQL相關(guān)信息
3:根據(jù)以上查詢到的信息使用以下SQL查詢:
SELECT sid, program FROM V$SESSION S WHERE EXISTS(SELECT 1 FROM V$PROCESS WHERE spid=3575 AND ADDR = S.PADDR);
可以查詢到具體那個客戶端查詢一直在不斷占用ORACLE資源!
最后對這個查詢進(jìn)行處理!

4.根據(jù)SID查得SQLITPUB
復(fù)制代碼 代碼如下:

select sql_textITPUB
from v$sqltext
where a.hashvalue=(select sql_hash_value
from v$session b
where b.SID='sid')
0order by piece ASC;

根據(jù)lockwait字段可以查詢當(dāng)前正在等待的鎖的相關(guān)信息:
復(fù)制代碼 代碼如下:

select * from v$lock where kaddr in (select lockwait from v$session where sid= $sid);
(sql_address,sql_hash_value),(prev_sql_addr,prev_hash_value) 根據(jù)這兩組字段, 可以查詢到當(dāng)前session正在執(zhí)行的或最近一次執(zhí)行的sql語句的詳細(xì)信息:
select * from v$sqltext where address = sql_address and hash_value = sql_hash_value;

根據(jù)PID查SQL相關(guān)信息:
復(fù)制代碼 代碼如下:

select id,serial# ,username,osuser,machine,program,process,to_char(logon_time,'yyyy/mm/dd hh24:mi:ss') logon from v$session where paddr in ( select addr from v$process where spid in('pid'));

根據(jù)PID查SQL語句
復(fù)制代碼 代碼如下:

SELECT a.username,a.machine,a.program,a.sid,a.serial#,a.status,c.piece,c.sql_text FROM v$session a,v$process b,v$sqltext c WHERE b.spid='spid' AND b.addr=a.paddr AND a.sql_address=c.address(+) ORDER BY c.piece;

得到進(jìn)程的sid號:
復(fù)制代碼 代碼如下:

select id,serial# ,username,osuser,machine,program,process,to_char(logon_time,'yyyy/mm/dd hh24:mi:ss') logon from v$session where paddr in ( select addr from v$process where spid in('pid'));

得到session的sqltext語句:
復(fù)制代碼 代碼如下:

select sql_text from v$sqltext_with_newlines where hash_value in (select SQL_HASH_VALUE from v$session where paddr in (select addr from v$process where spid= 'pid')) order by piece;
您可能感興趣的文章:
  • Oracle對于死鎖的處理方法
  • Oracle外鍵不加索引引起死鎖示例
  • Oracle中查看正在運(yùn)行的SQL進(jìn)程腳本分享
  • oracle查看被鎖的表和被鎖的進(jìn)程以及殺掉這個進(jìn)程
  • 探討:Oracle數(shù)據(jù)庫查看一個進(jìn)程是如何執(zhí)行相關(guān)的實(shí)際SQL語句
  • Oracle查看和修改連接數(shù)(進(jìn)程/會話/并發(fā)等等)
  • ORACLE實(shí)例的后臺進(jìn)程
  • Oracle刪除死鎖進(jìn)程的方法

標(biāo)簽:包頭 淮北 通遼 衢州 定西 衡水 溫州 潮州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《如何查詢占CPU高的oracle進(jìn)程》,本文關(guān)鍵詞  如何,查詢,占,CPU,高的,oracle,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《如何查詢占CPU高的oracle進(jìn)程》相關(guān)的同類信息!
  • 本頁收集關(guān)于如何查詢占CPU高的oracle進(jìn)程的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章