1.查看占用的session
select t2.username oracle用户名,
t2.sid sid进程号,
t2.serial# serial#序列号,
t3.object_name 表名,
t2.OSUSER 操作系统用户名,
t2.MACHINE 机器名,
t2.PROGRAM 操作工具,
t2.LOGON_TIME 登陆时间,
t1.LOCKED_MODE 锁表模式
from v$locked_object t1, v$session t2, dba_objects t3
where t1.session_id = t2.sid
and t1.object_id = t3.object_id;
2.杀掉session
alter system kill session '上一步的sid,上一步的serial';
3.杀不掉session时,杀进程
select spid, osuser, s.program
from v$session s,v$process p
where s.paddr=p.addr and s.sid=上一步的sid;
4.去服务器杀进程
Linux:
kill -9 上一步的spid
windows:
orakill orcl 上一步的spid
5.杀完进程再杀session
详情见步骤2