解决oracle存储过程死锁问题
来源:互联网 发布:淘宝店铺各种图片尺寸 编辑:程序博客网 时间:2024/05/22 11:40
最近在写存储过程的时候,因为要测试存储过程的运行情况,中途操作失误,导致存储过程死锁,写了半天的东西编译不了了,没办法只能重新创建一个存储过程,以前的那个删也删不掉,用也用不了,很难受,最后是重启了数据库才解决这个问题。不过现在找到一种更简单的方法解决这个问题。
四步解决:
1、执行语句
select object_name,machine,s.sid,s.serial#from v$locked_object l,dba_objects o ,v$session swhere l.object_id = o.object_id and l.session_id=s.sid;
查出来哪些对象被锁,得到sid
2、还是执行语句 alter system kill session '24,111';
(其中24,111分别是上面查询出的sid,serial#)
kill该session (sid,serial#即为上面查出来的sid和serial#)
注:此语句只是将该存储过程的状态由active改为了killed,并没有彻底的释放该存储过程,所以还是编译不了存储过程
3、要解决这一问题只能在OS上杀死这一线程(进程)了
执行语句获得线程(进程)号
select spid, osuser, s.programfrom v$session s,v$process pwhere s.paddr=p.addr and s.sid=24
(24是上面的sid)
4、在服务器上执行下列命令(数据库在哪台机子,就在哪台机子执行)
orakill sid thread
orakill是oracle提供的命令,一般装oracle的时候,已经配上环境变量,这里可直接运行
其中sid为该存储过程所在数据库的实例名我的为orcl
thread即为线程(进程)号,即第三步查出来的spid。
以上就是解决存储过程的死锁问题了,也是从别人那取经回来的东西,写出来,主要就是为了加强记忆
阅读全文
0 0
- 解决oracle存储过程死锁问题
- ORACLE 存储过程死锁
- 解决ORACLE死锁问题
- 解决Oracle死锁问题
- ORACLE 解决死锁问题
- oracle存储过程!解决网友问题
- 如何解决oracle死锁问题
- Oracle死锁问题分析解决
- Oracle死锁问题分析解决
- Oracle死锁问题分析解决
- oracle存储过程问题
- 解决Oracle存储过程中创建不了表的问题
- 关于Oracle存储过程执行权限问题的解决
- 查看死锁存储过程
- 一个Oracle存储过程编译死锁的奇怪现象
- 求助,ORACLE存储过程问题!!
- oracle存储过程权限问题
- oracle 存储过程中文问题
- elementui 限制选择范围 disabledData
- Hibernate的class_name.hbm.xml中component的使用
- JSP学习笔记(8)_Servlet
- Service进程防杀
- form表单提交onclick和onsubmit
- 解决oracle存储过程死锁问题
- shell常用命令
- 邮件发送代码片段
- protocol .proto文件转.java文件
- Unity_NGUI基础控件_ScrollView_042
- Hive集合数据类型
- linux zip,linux下打包zip文件
- red_black_tree的一个实现(c/c++)
- 特定式子的非线性拟合(使用于数据较少的的时候)