国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

問答方式輕松學習Oracle數據庫中的Kill session

2024-08-29 13:51:54
字體:
來源:轉載
供稿:網友
問:當一個session被kill掉以后,該session的paddr被修改,假如有多個session被kill,那么多個session的paddr都會被更改為相同的進程地址,在這種情況下,資源是無法釋放的,我選擇了查詢spid,在操作系統級來kill這些進程。但是由于此時v$session.paddr已經改變,我已經無法通過v$session和v$PRocess關聯來獲得spid,那還可以怎么辦呢?答:具體示例如下:SQL> select p.addr from v$process p where pid
<> 1  2  minus  3  select s.paddr from v$session s;
ADDR
--------
542B70E8
542B7498現在我們獲得了進程地址,就可以在v$process中找到spid,然后可以使用Kill或者orakill在系統級來殺掉這些進程。當在Oracle中kill session以后, Oracle只是簡單的把相關session的paddr 指向同一個虛擬地址.此時v$process和v$session失去關聯,進程就此中斷,然后Oracle就等待PMON去清除這些Session.所以通常等待一個被標記為Killed的Session退出需要花費很長的時間,假如此時被Kill的process,重新嘗試執行任務,那么馬上會收到進程中斷的提示,process退出,此時Oracle會立即啟動PMON 來清除該session。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上林县| 和田县| 天台县| 如东县| 旺苍县| 河曲县| 双城市| 阳春市| 疏勒县| 涡阳县| 江津市| 东平县| 兴山县| 邵阳县| 兖州市| 荆门市| 南开区| 吴忠市| 科技| 咸阳市| 瑞安市| 延庆县| 辽阳县| 咸阳市| 永康市| 定陶县| 湄潭县| 克拉玛依市| 武冈市| 彭山县| 桂平市| 上犹县| 沭阳县| 和静县| 铜鼓县| 东兴市| 宜宾县| 内黄县| 应城市| 威远县| 湖口县|