查找 SQL Server 中 SQL 活动连接

数据库 SQL Server
SP_WHO 作为查找 SQL Server 上运行的活动 SQL 连接的方法。SP_WHO 将列出最少的列,但却是列出活动连接的快速方法。特别是当SQL Server上有阻塞时,可以找到阻塞和被阻塞的进程。

一、概述

有多种方法可以找到 SQL Server 的活动 SQL 连接。本文分享一下几种常见的方法。

二、解决方案

1、SP_WHO

SP_WHO 作为查找 SQL Server 上运行的活动 SQL 连接的方法。SP_WHO 将列出最少的列,但却是列出活动连接的快速方法。特别是当SQL Server上有阻塞时,可以找到阻塞和被阻塞的进程。

sp_who

2、SP_WHO2

sp_who2

SP_WHO还有一个高级版本,叫做SP_WHO2。它比 SP_WHO 有更多的列,如 CPUTime、DiskIO、ProgramName 等……这些列为我们提供了有关 SQL 连接性质的更多详细信息。

3、SYS.SYSPROCESSES

查找活动 SQL 连接的另一个好方法是使用系统兼容性视图 SYS.SYSPROCESSES。该视图有很多列,其中包含大量信息,有助于您找出活动的 sql 连接,特别是当您想要查找阻塞的进程时。然而,这是向后兼容的一个视图。因此,不要使用 SYS.SYSPROCESSES,建议使用我下面的介绍的系统视图 SYS.DM_EXEC_SESSIONS。



4、SYS.DM_EXEC_SESSIONS

SYS.DM_EXEC_SESSIONS 是动态管理视图之一,它取代了旧的系统表 sysprocesses。SYS.DM_EXEC_SESSIONS 的优点是它的列is_user_process。使用此列,您可以轻松过滤掉系统进程。

SELECT is_user_process, * FROM SYS.DM_EXEC_SESSIONS

/* To list down only the user processes */

SELECT * FROM SYS.DM_EXEC_SESSIONS where is_user_process = 1
责任编辑:姜华 来源: 今日头条
相关推荐

2010-11-08 16:56:52

SQL Server绑

2023-08-15 08:26:34

SQL Server查找死锁

2010-07-19 14:24:15

SQL Server盘

2009-06-03 10:51:59

连接SQL数据库Adobe Dream

2009-07-15 15:18:01

JDBC连接SQL S

2010-11-10 10:09:40

2010-11-08 17:01:53

SQL Server绑

2009-08-24 15:41:50

C#连接SQL Ser

2010-07-01 15:26:05

SQL Server

2010-11-10 15:23:55

SQL SERVER

2010-11-08 14:45:44

SQL Server连

2010-11-12 13:08:36

动态sql语句

2010-08-05 09:07:24

2010-06-17 15:17:24

SQL Server

2010-10-21 15:13:20

SQL Server系

2010-10-20 17:37:23

SQL Server连

2009-08-10 16:25:30

JSP SQL Ser

2010-11-08 15:21:17

SQL Server连

2010-11-08 14:40:46

SQL Server连

2010-06-18 09:55:06

SQL Server
点赞
收藏

51CTO技术栈公众号