sys.sysprocesses视图的使用小结
Sys.SysProcesses 系统表是一个很重要的系统视图,主要用来定位与解决Sql Server的阻塞和死锁
包含正在 SQL Server 实例上运行的进程的相关信息。这些进程可以是客户端进程或系统进程。 
视图中主要的字段: 
1. Spid:Sql Servr 会话ID 
2. Kpid:Windows 线程ID 
3. Blocked:正在阻塞求情的会话 ID。如果此列为 Null,则标识请求未被阻塞 
4. Waittype:当前连接的等待资源编号,标示是否等待资源,0 或 Null表示不需要等待任何资源 
5. Waittime:当前等待时间,单位为毫秒,0 表示没有等待 
6. DBID:当前正由进程使用的数据库ID 
7. UID:执行命令的用户ID 
8. Login_time:客户端进程登录到服务器的时间。 
9. Last_batch:上次执行存储过程或Execute语句的时间。对于系统进程,将存储Sql Server 的启动时间 
10.Open_tran:进程的打开事务个数。如果有嵌套事务,就会大于1 
11.Status:进程ID 状态,dormant = 正在重置回话 ; running = 回话正在运行一个或多个批处理 ; background = 回话正在运行一个后台任务 ; rollback = 会话正在处理事务回滚 ; pending = 回话正在等待工作现成变为可用 ; runnable = 会话中的任务在等待获取 Scheduler 来运行的可执行队列中 ; spinloop = 会话中的任务正在等待自旋锁变为可用 ; suspended = 会话正在等待事件完成 
12.Hostname:建立链接的客户端工作站的名称 
13.Program_name:应用程序的名称,就是 连接字符串中配的 Application Name 
14.Hostprocess:建立连接的应用程序在客户端工作站里的进程ID号 
15.Cmd:当前正在执行的命令 
16.Loginame:登录名
应用实例:
1. 检查数据库是否发生阻塞
先查找哪个链接的 blocked 字段不为0。如 SPID53的blocked 字段不为0,而是 52。SPID 52 的 blocked 为0,就可以得出结论:此时有阻塞发生,53 被 52 阻塞住了。如果你发现一个连接的 blocked 字段的值等于它自己,那说明这个连接正在做磁盘读写,它要等自己的 I/O 做完。
2. 查找链接在那个数据库上
检查 dbid 即可。得到 dbid,可以运行以下查询得到数据库的名字: 
Select name,dbid from master.sys.sysdatabases
通过下面的语句可以查看当前库中有哪些表是发生死锁的:
SELECT request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName 
FROM sys.dm_tran_locks 
WHERE resource_type='OBJECT '
sys.sysprocesses视图的使用小结的更多相关文章
- master.sys.sysprocesses相关内容
		
sysprocesses 表中保存关于运行在 Microsoft® SQL Server™ 上的进程的信息.这些进程可以是客户端进程或系统进程. sysprocesses 只存储在 master 数据 ...
 - SQLSERVER系统视图,系统表,sys.sql_modules视图
		
SQLServer中提供了相当丰富的系统视图,能够从宏观到微观,从静态到动态反应数据库对象的存储结果.系统性能.系统等待事件等等.同时 也保留了与早期版本兼容性的视图,主要差别在于SQLServer2 ...
 - 数据库问题5-SYS.SYSPROCESSES使用和查找死锁
		
http://blog.sina.com.cn/s/blog_62c4727d0100jc5z.html (一)理論部份 sys.sysprocesses (Transact-SQL) http:// ...
 - select *  from sys.sysprocesses
		
MSDN:包含正在 SQL Server 实例上运行的进程的相关信息.这些进程可以是客户端进程或系统进程. 视图中主要的字段: 1. Spid:Sql Servr 会话ID 2. Kpid:Windo ...
 - SQL Agent Job ->> 通过sys.sysprocesses的program_name字段来定位对应的Job
		
;WITH T AS ( SELECT 'SQLAgent - TSQL JobStep (Job 0x'+ ),)),) + ' : Step ' + )) + ')' filter, j.job_ ...
 - 【SQL Server学习笔记】事务、锁定、阻塞、死锁     sys.sysprocesses
		
http://blog.csdn.net/sqlserverdiscovery/article/details/7712068 Column name Data type Description ...
 - 理解和使用SQL Server中的并行
		
许多有经验的数据库开发或者DBA都曾经头痛于并行查询计划,尤其在较老版本的数据库中(如sqlserver2000.oracle 7.mysql等).但是随着硬件的提升,尤其是多核处理器的提升,并行处理 ...
 - SQL SERVER 查询性能优化——分析事务与锁(五)
		
SQL SERVER 查询性能优化——分析事务与锁(一) SQL SERVER 查询性能优化——分析事务与锁(二) SQL SERVER 查询性能优化——分析事务与锁(三) 上接SQL SERVER ...
 - 答:SQLServer DBA 三十问之六:Job信息我们可以通过哪些表获取;系统正在运行的语句可以通过哪些视图获取;如何获取某个T-SQL语句的IO、Time等信息;
		
6. Job信息我们可以通过哪些表获取:系统正在运行的语句可以通过哪些视图获取:如何获取某个T-SQL语句的IO.Time等信息: 我的MSDB数据库中有全部的表: sys.all_columns,s ...
 
随机推荐
- CSS技巧-rgba函数的妙用
			
先简单介绍一下: rgba()函数是平时开发中经常遇到的,这篇文章也做了一个比较详细的解读以及一系列的应用. 对它的工作原理做一番分析:就是具有一定透明度的盒子: 还比较了rgba()函数和不透明度属 ...
 - 剑指Offer 包含min函数的栈
			
题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数. 思路: 这个题是想得到一个时间复杂度为O(1)的min函数,所以应用一个辅助栈,压的时候,如果A栈的压入比B栈压入 ...
 - 有关在线OJ网络AC爬虫
			
搜索源码 爬取代码 自动登录 在线提交 判断AC
 - EXT Grid  celleditor列编辑,动态控制某一单元格只读
			
listeners : { beforeedit:function(editor, context, eOpts) { if(context.record.data.hasRatio == " ...
 - ubuntu apt常用命令
			
apt-cache search packagename 搜索包 apt-cache show packagename 获取包的相关信息,如说明.大小.版本等 apt-get install pack ...
 - Apache和PHP的安装
			
最近看了一些教科书,可能是印刷的缘故,只是一个空格没有打印,再加上网上的很多博客文章只是顺手转载,并没有仔细的检查,还有php和apache之间的版本问题,害得我花了4,5小时的时间才搞定环境的搭配. ...
 - Sublime text2 插件推荐
			
HTML-CSS-JS Prettify: 前端插件,使用 ctrl+shift+h 格式化代码
 - 【GoLang】类型和作用在它上面定义的方法必须在同一个包里定义
			
cannot define new methods on non-local type int 参考资料: http://wiki.jikexueyuan.com/project/the-way-to ...
 - 用Javascript主动更行URL
			
参考---ttp://www.oschina.net/translate/manipulating-url-using-javascript-without-freshing-the-page var ...
 - BestCoder37  1001.Rikka with string  解题报告
			
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5202 题目意思:给出一个长度为 n,只有小写字母和 ? 组成的字符串.现在需要向 ? 的位置填小写字母 ...