SQL Server 中 sp_who 状态的含义

Posted

技术标签:

【中文标题】SQL Server 中 sp_who 状态的含义【英文标题】:Meaning of sp_who Status in SQL Server 【发布时间】:2008-10-15 20:52:16 【问题描述】:

谁能告诉我 SQL Server 的 sp_who 命令中的状态是什么意思?为什么 spid 会被暂停? “可运行”是什么意思?

谢谢!

【问题讨论】:

【参考方案1】:

很容易在网上找到答案。 Link

休眠。SQL Server 正在重置会话。

正在运行。会话正在运行一个或多个批次。启用多个活动结果集 (MARS) 后,一个会话可以运行多个批次。有关详细信息,请参阅使用多个活动结果集 (MARS)。

后台。会话正在运行后台任务,例如死锁检测。

回滚。会话正在进行事务回滚。

待处理。会话正在等待工作线程可用。

可运行。会话的任务在等待获取时间片时位于调度程序的可运行队列中。

自旋循环。会话的任务正在等待自旋锁空闲。

已暂停。会话正在等待 I/O 等事件完成。

【讨论】:

谢谢!我找不到那个,但我很高兴你找到了! 不同的用户在搜索相同的字符串时得到不同的命中;谷歌 taylors 搜索结果到以前完成的搜索。 我无法理解 runnable 和 pending 之间的区别。当一个任务在可运行队列中时,这意味着它正在等待一个工作线程。因为只有一个工人才能完成一项任务。我错过了什么?【参考方案2】:

我认为这方面的部分困惑是上面显示的列表之外的状态是可见的。想到的三个是

睡觉 等待命令 其他

【讨论】:

以上是关于SQL Server 中 sp_who 状态的含义的主要内容,如果未能解决你的问题,请参考以下文章

SQL SERVER 查找锁信息

sql中怎么取得当前时间

sql server 查看锁表SQL

SQL server 备份/恢复/压缩 进度查询

SQL Server检索存储过程的结果集

SQL Server 连接数的任何限制?