oracle解决死锁!_第1页
oracle解决死锁!_第2页
oracle解决死锁!_第3页
oracle解决死锁!_第4页
oracle解决死锁!_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、个人经验:怎样杀死Oracle的死锁进程 发布时间:2008.02.01 04:55 来源:赛迪网作者:梁辰杀死Oracle死锁进程的个人经验: .查哪个过程被锁 查V$DB_OBJECT_CACHE视图: SELECT * FROM V$DB_OBJECT_CACHE WHERE OWNER=过程的所属用户 AND CLOCKS!=0;2. 查是哪一个SID,通过SID可知道是哪个SESSION. 查V$ACCESS视图: SELECT * FROM V$ACCESS WHERE OWNER=过程的所属用户 AND NAME=刚才查到的过程名;3. 查出SID和SERIAL# 查V$SESS

2、ION视图: SELECT SID,SERIAL#,PADDR FROM V$SESSION WHERE SID=刚才查到的SID查V$PROCESS视图: SELECT SPID FROM V$PROCESS WHERE ADDR=刚才查到的PADDR;4. 杀进程 (1).先杀Oracle进程: ALTER SYSTEM KILL SESSION 查出的SID,查出的SERIAL#;(2).再杀操作系统进程: 推荐精选KILL -9 刚才查出的SPID 或 ORAKILL 刚才查出的SID 刚才查出的SPID。深入探讨如何解决数据库中的死锁问题 发布时间:2008.04.08 04:37

3、来源:赛迪网作者:xiaoqiao【赛迪网IT技术报道】说道死锁问题的解决,一般情况下我们都是选择KILL进程,但如果不查出引起死锁的原因,死锁的现象则会频繁出现,其实只要通过查找引起死锁的操作,就可以方便的解决死锁。 具体的解决方法如下: 1.再死锁发生时,我们可以通过下面的语法,查询到引起死锁的操作: use master go declare spid int,bl int DECLARE s_cur CURSOR FOR select 0 ,blocked from (select * from sysprocesses where blocked0 ) a where not exi

4、sts(select * from (select * from sysprocesses where blocked0 ) b where a.blocked=spid) union select spid,blocked from sysprocesses where blocked0 推荐精选OPEN s_cur FETCH NEXT FROM s_cur INTO spid,bl WHILE FETCH_STATUS = 0 begin if spid =0 select 引起数据库死锁的是: + CAST(bl AS VARCHAR(10) + 进程号,其执行的SQL语法如下 els

5、e select 进程号SPID:+ CAST(spid AS VARCHAR(10)+ 被 + 进程号SPID:+ CAST(bl AS VARCHAR(10) +阻塞,其当前进程执行的SQL语法如下 DBCC INPUTBUFFER (bl ) FETCH NEXT FROM s_cur INTO spid,bl end CLOSE s_cur DEALLOCATE s_cur exec sp_who2 2.然后查找程序/数据库,此t_sql语法具体在什么地方使用。 3.分析已经找到的,解决问题。 EG: /* - 引起数据库死锁的是: 71进程号,其执行的SQL语法如下 EventTyp

6、e Parameters EventInfo 推荐精选- - - Language Event 0 select * from test insert test values(1,2) (所影响的行数为 1 行) DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。 - 进程号SPID:64被进程号SPID:71阻塞,其当前进程执行的SQL语法如下 EventType Parameters EventInfo - - - Language Event 0 select * from test insert test values(1,2) (所影响的行数为 1 行) DBC

7、C 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。 - 进程号SPID:65被进程号SPID:64阻塞,其当前进程执行的SQL语法如下 EventType Parameters EventInfo - - - Language Event 0 begin tran select * from test with (holdlock) waitfor time 12:00 推荐精选select * from test commit (所影响的行数为 1 行) DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。 - 进程号SPID:73被进程号SPID:64阻塞,其当前进程执行的SQL语法如下 EventType Parameters EventInfo - - - Language Event 0 begin tran select * from test with (holdlock) waitfor tim

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论