|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
开发环境: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,表也解锁 返回类别: 教程 上一教程: MYSQL 5.0 新特性教程 存储过程:第二讲 下一教程: MYSQL以速度为目标 您可以阅读与"一次解决SESSION无法完全删除问题的全过程"相关的教程: · 查询SQL碰到DEADLOCK问题的解决 · ORACLE中解决汉字无法显示、输入问题 · MYSQL中文模糊检索问题的解决方式 · 实用的MYSQL中文问题的解决方案 · SQL2000治理SQL7服务器出现TIMEOUT问题的解决 |
| 快精灵印艺坊 版权所有 |
首页 |
||