ORACLE中殺掉一個程式
一些ORACLE中的程式被殺掉後,狀態被置為"killed",但是鎖定的資源很長時間不釋放。解決這種問題的一種方法,是在ORACLE中殺不掉的,在OS一級再殺。
1.下面的語句用來查詢哪些物件被鎖:
select object_name,machine,s.sid,s.serial#
from v$locked_object l,dba_objects o ,v$session s
where l.object_id = o.object_id and l.session_id=s.sid;
2.下面的語句用來殺死一個程式:
alter system kill session '24,111'; (其中24,111分別是上面查詢出的sid,serial#)
【注】以上兩步,可以透過Oracle的管理控制檯來執行。
3.如果利用上面的命令殺死一個程式後,程式狀態被置為"killed",但是鎖定的資源很長時間沒有被釋放,那麼可以在os一級再殺死相應的程式(執行緒),首先執行下面的語句獲得程式(執行緒)號:
select spid, osuser, s.program
from v$session s,v$process p
where s.paddr=p.addr and s.sid=24 (24是上面的sid)
4.在OS上殺死這個程式(執行緒):
1)在windows用orakill殺死執行緒,orakill是oracle提供的一個可執行命令,語法為:
orakill sid thread
其中:
sid:表示要殺死的程式屬於的例項名
thread:是要殺掉的執行緒號,即第3步查詢出的spid。
eg:c:>orakill orcl 12345
2)在unix用kill -9 thread
eg:$ kill -9 12345
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24930246/viewspace-1041575/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle徹底殺掉程式Oracle
- linux批量殺掉程式linux批量殺掉程式Linux
- oracle生成批量殺掉active程式的sqlOracleSQL
- 在UNIX環境下批次殺掉ORACLE程式Oracle
- 如何殺掉一個使用者下的所有程式並drop掉這個使用者
- 快速殺掉Oracle的SessionOracleSession
- 殺掉鎖死的程式
- linux 下粗暴殺掉 oracleLinuxOracle
- 殺掉aspnet_wp程式
- 【sqlserver】殺掉所有死鎖程式SQLServer
- Linux如何殺掉殭屍程式Linux
- 殺掉長期inactive的程式
- Linux下批次殺掉 包含某個關鍵字的 程式程式Linux
- App被殺掉APP
- windows上殺掉指定名稱的程式Windows
- ORACLE中殺死鎖程式的方法Oracle
- oracle殺程式Oracle
- wdaproxy 啟動,即被系統殺掉程式,求解。
- 實現關閉程式函式,殺掉pchunter函式
- 關於oracle資料庫內部殺掉程式及session檢視的測試Oracle資料庫Session
- oracle查詢並殺掉鎖表及物件的session及相關係統程式Oracle物件Session
- 將程式在後臺執行和殺掉後臺的程式
- 什麼是殭屍程式,如何找到並殺掉殭屍程式?
- 如何使用xkill命令殺掉Linux程式/未響應的程式Linux
- 如何殺掉Teradata的sessionSession
- 殺死一個正在執行的程式 (轉)
- Windows中殺死佔用某個埠的程式Windows
- 殺死Oracle死鎖程式Oracle
- 如何在無響應的Linux系統中殺掉記憶體消耗最大的程式Linux記憶體
- 一個電腦程式設計師被謀殺程式設計師
- 一個殺死終端所有程式的 Shell(轉)
- 別讓自己變為一個廢掉的程式猿
- 恢復oracle中drop掉的表Oracle
- oracle殺死鎖表的程式Oracle
- 教你如何使用tcpkill殺掉tcp連線TCP
- 殺掉後臺執行的過程
- kill -9 殺掉oracle所有程式卻不能啟動和連線資料庫的解決辦法!Oracle資料庫
- 如何黑掉一個網站網站