oracle查找并杀掉锁表及对象的session及相关系统进程
来源:互联网 发布:历史地理入门 知乎 编辑:程序博客网 时间:2024/06/05 13:21
一、处理过程
1.通过查找出已被锁定的数据库表及相关的sid、serial#及spid:
select object_name as 对象名称, s.sid, s.serial#, p.spid as 系统进程号
from v$locked_object l, dba_objects o, v$session s, v$process p
where l.object_id = o.object_id
and l.session_id = s.sid
and s.paddr = p.addr;
2.在数据库中灭掉相关session:
alter system kill session 'sid,serial#'; --sid及serial#为第一步查出来的数据
3.从系统中灭掉与该session对应的进程:
kill -9 spid; --spid为第一步中查出来的系统进程号
经过以上操作之后重新对之前锁定的对象进行操作应该就可以了。
二、使用了相关表的基本介绍
V$LOCKED_OBJECT中的列说明:
XIDUSN:回滚段号
XIDSLOT:槽号
XIDSQN:序列号
OBJECT_ID:被锁对象ID
SESSION_ID:持有锁的sessionID
ORACLE_USERNAME:持有锁的Oracle 用户名
OS_USER_NAME:持有锁的操作系统 用户名
PROCESS:操作系统进程号
LOCKED_MODE:锁模式
v$session的说明
V$SESSION是基础信息视图,用于找寻用户SID或SADDR
常用列:
SID:SESSION标识
SERIAL#:如果某个SID又被其它的session使用的话则此数值自增加(当一个SESSION结束,另一个SESSION开始并使用了同一个SID)。
AUDSID:审查session ID唯一性,确认它通常也用于当寻找并行查询模式
USERNAME:当前session在oracle中的用户名。
STATUS:这列用来判断session状态是:
Achtive:正执行SQL语句(waiting for/using a resource)
Inactive:等待操作(即等待需要执行的SQL语句)
Killed:被标注为删除
v$process视图
v$process视图包含当前系统Oracle运行的所有进程信息。常被用于将Oracle或服务进程的操作系统进程ID与数据库session之间建立联系。
常用列:
ADDR:进程对象地址
PID:oracle进程ID
SPID:操作系统进程ID
- oracle查找并杀掉锁表及对象的session及相关系统进程
- oracle查找并杀掉锁表及对象的session及相关系统进程
- 查询锁表进程及杀掉进程
- 查询oracle锁定的表及杀掉锁表的进程
- 查询oracle锁定的表及杀掉锁表的进程
- oracle 查看被锁住表的session并杀掉
- VC从系统进程中查找并杀掉指定进程
- vc 查找进程,并杀掉
- 僵尸进程查找并杀掉
- Oracle杀掉系统进程的描述
- Oracle杀掉系统进程的描述
- Oracle杀掉系统进程的描述
- linux查找进程并杀掉进程
- 锁表的进程和语句,并杀掉
- oracle杀掉系统进程描述!!!
- ORACLE数据库杀掉会话进程的三种方式及案例分析
- linux下查找并杀掉tomcat进程
- 如何杀掉带锁的Oracle进程
- 保护眼睛,绿色上网
- WebService概念和特点
- 如何平稳度过网站排名的四个时期
- 细说影响淘宝排名的那些因素
- Ibatis读写CLOB数据
- oracle查找并杀掉锁表及对象的session及相关系统进程
- 2011计本 网本作业02
- 关于eclipse for java ee 如何新建一个javaWeb项目
- 【C++】错误处理和异常处理
- 【转】让人深思的退役贴
- UHF读卡器调试心得
- WeiFenLuo.winFormsUI.Docking.dll的使用(停靠效果)
- SOA之添加异常处理
- heap STL