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

首頁 > 開發 > 綜合 > 正文

一次解決session無法完全刪除問題的全過程

2024-07-21 02:34:20
字體:
來源:轉載
供稿:網友
    開發環境:win2000server+Oracle9i+Delphi開發人員報告:在程序中殺了JOB,但是被操作的表還是鎖表狀態,              其中有一張日志表還在不斷插入記錄, 直到執行完所有插入操作(一個漫長的等待過程)才能解鎖現場描述:oem中被殺job起的session狀態為killed,其中有3張表被鎖點擊右鍵--》中斷會話            提示: 標記要刪去的會話    ===================================================================================================處理方法一 :    1.SELECT saddr,sid,serial#,paddr,username,status FROM v$session WHERE username IS NOT NULLexample:saddr,sid,serial#,paddr,username,status FROM v$session WHERE username = 'XNJW0419' ;SADDR SID SERIAL# PADDR USERNAME STATUS -------- ---------- ---------- -------- ------------------------------ -------- 542E0E6C 11 314 542B70E8 EYGLE INACTIVE 542E5044 18 662 542B6D38 SYS ACTIVE    2.ALTER SYSTEM KILL SESSION 'sid, serial#';example:ALTER SYSTEM KILL SESSION '11,314';(注:在sqlplus中執行 )    結果: 提示標記要刪去的會話 無法釋放會話,未成功解鎖    ====================================================================================================處理方法二 :    a、 找到你要殺掉的那個SESSION, 并記下paddr    SELECT sid, username, paddr, status FROM v$session WHERE username = '用戶名' ; example:SELECT sid, username, paddr, status FROM v$session WHERE username = 'XNJW0419' ;       SID USERNAME                       PADDR    STATUS---------- ------------------------------ -------- --------        10 XNJW0419                       2B5E2E2C KILLED    b、 找到這個SESSION所對應的spid    SELECT * FROM v$PRocess WHERE addr = '上面查尋的paddr'; example:SELECT ADDR,PID,SPID,USERNAME,SERIAL#,TERMINAL FROM v$process WHERE addr = '2B5E2E2C';ADDR            PID SPID         USERNAME           SERIAL# TERMINAL-------- ---------- ------------ --------------- ---------- ----------------2B5E2E2C         44 1204         SYSTEM                 -99 JWC
    c、 殺掉spid所標識的那個進程    D:/>orakill sid  spid (注:cmd命令窗口中執行 只有oracle服務器端才有orakill命令)example: D:/>orakill oemrep 1204    提示:KILL OF THREAD id 1204 IN INSTANCE oemrep sUCcessfully signalled.    結果:成功刪除該SESSION,表也解鎖    一句話:    --查看系統鎖    SELECT /*+ rule */ s.username,
          decode(l.type,'TM','TABLE LOCK','TX','ROW LOCK',NULL) LOCK_LEVEL,
          o.owner,
          o.object_name,
          o.object_type,
          s.sid,
          s.serial#,
          s.STATUS,
          s.terminal,
          s.machine,
          s.program,
          s.osuser,
          s.LOGON_TIME
    FROM v$session s,
         v$lock l,
         dba_objects o
    WHERE l.sid = s.sid
    AND l.id1 = o.object_id(+)
    AND s.username is NOT NULL
    and s.status ='ACTIVE'    解鎖及Kill Session:    使用下面的語法查出鎖并殺掉Session。    SELECT A.SID,A.SERIAL#,A.USERNAME,B.TYPE FROM V$SESSION A,V$LOCK B WHERE A.SID=B.SID;
    ALTER SYSTEM KILL SESSION 'SID,SERIAL#';    當然在kill前最好記住問題所在然后分析從最根本的解決問題!    ORAKILL為windows下面的操作命令。UNIX下面直接使用KILL -9也可以,不過建議使用ALTER SYSTEM KILL SESSION 'SID,SERIAL#';    進行kill

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长岭县| 静宁县| 共和县| 南陵县| 古田县| 峨眉山市| 满洲里市| 汾西县| 宾川县| 平潭县| 噶尔县| 通辽市| 桐乡市| 南安市| 嘉定区| 绩溪县| 阳城县| 左贡县| 安阳县| 赣榆县| 白水县| 江津市| 洮南市| 洪江市| 乾安县| 老河口市| 兴隆县| 钟祥市| 天镇县| 天门市| 西乡县| 曲麻莱县| 梅河口市| 微山县| 龙泉市| 沙田区| 屏山县| 确山县| 民县| 广灵县| 锡林郭勒盟|