数据库死锁找id问题 假如一张表被两个java进程锁住了,用什么查询语句可以查询出任务管理器中的哪两个pid锁住了这个表? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我现在查询出来的这个进程id跟我的任务管理器中的两个java进程id对应不上啊 你上图那个是pid,下图那个是sid 这俩不是一个概念! sid 是sql server实例的进程会话id。系统的pid是windows平台上执行的系统进程id。 那在sql2008中怎么才能是查询出对应到任务管理器中的pid呢? 其实我就想在数据库查询出某张表是被任务管理器中的哪些进程给死锁住了,请问大牛们怎么查询? 数据库是sqlserver2008的 从pid到sid其实经过了sqlos的转换。pid是你程序的id,但是这个程序会发出很多会话,所以就有了sid(会话id),死锁问题你去找pid没用。只能找sid来处理。我用你的程序,同时打开10个报表文件,其中一个死锁了,那你删掉我这个程序就影响面太大了。应该kill 掉那个死锁的报表对应的sid即可。所以你用你下面那个图的来处理就好了。 那我怎么才能知道这个会话id属于哪个进程id呢? 我觉得你现在思维有点限定了。你应该已经知道有多少个程序在连接数据库,死锁问题,你要查看sid,然后分析这个sid为什么死锁。具体可以看看大版的博客:http://blog.csdn.net/roy_88/article/details/2686724 客户“用”程序而已,怎么会是客户能锁表呢,除非你前端有这个功能按钮....你要知道客户在做了什么操作,然后进行SQLServer端的监控。合理的程序应该编译或者封装好的。你难道还看代码? 好像讨论太深层次了。其实我的目的很简单,就是能不能根据数据库的会话sid找到对应的pid呢?中间是不是有哪个关联的? 开启sql Profiler可以跟踪,但是对性能有影响 to :Huangzj 感谢你这么耐心的回答,让我懂了不少。谢谢DBA_ 问个sql查询转到access里的查询语句 求一条SQL语句 Sql--Group by,郁闷. 请问sql server 2000中有哪些是空白字符? varchar类型字段的sum功能实现 这样的语句怎么写 请问如何改变数据库的排序规则名称 日志文件怎么能变小点? 小妹有难了,哥哥快帮我啊,高分哦(在线6小时急等) 存储过程BCP语句转义 请教:如何查询统计两行数据间同时存在值的个数 SQLSERVER分区问题
这俩不是一个概念! sid 是sql server实例的进程会话id。系统的pid是windows平台上执行的系统进程id。
那在sql2008中怎么才能是查询出对应到任务管理器中的pid呢?
那我怎么才能知道这个会话id属于哪个进程id呢?
http://blog.csdn.net/roy_88/article/details/2686724
好像讨论太深层次了。其实我的目的很简单,就是能不能根据数据库的会话sid找到对应的pid呢?中间是不是有哪个关联的?
to :Huangzj
感谢你这么耐心的回答,让我懂了不少。谢谢DBA_