SQL Server 查杀会话连接[通俗易懂]

SQL Server 查杀会话连接[通俗易懂]sysprocesses 只存储在 master 数据库中,是一张视图。 sysprocesses 表中保存关于运行在 Microsoft® SQL Server™ 上的进程的信息。这些进程可以是客…

SQL Server 查杀会话连接

sysprocesses 表中保存关于运行在 Microsoft® SQL Server™ 上的进程的信息。这些进程可以是客户端进程或系统进程。

Select * From master.sys.sysprocesses
 

一、使用sysprocesses查询当前系统被阻塞的会话

  字段Blocked<>0代表当前的SQL Server会话ID被锁定,锁定当前会话ID的SQL Server会话ID就是Blocked中的值。

  查询当前系统被锁定的会话信息  

        Select * From master.sys.sysprocesses Where Blocked <> 0

二、查询某个会话所执行的SQL语句

        —    dbcc inputbuffer(spid) 如:
        dbcc inputbuffer(3) 

三、杀死某个会话

  SQL Server系统库对应的会话不能Kill,可以用dbid>4进行判断;dbid<=4的代表系统库

        –kill spid 如
        kill 63

四、查看当前所有数据库的连接情况

Select db_name(dbid) as [Database Name],  count(dbid) as [No Of Connections], loginame as [Login Name] 
From master.sys.sysprocesses 
Where dbid > 4 
Group By dbid, loginame
 

五、杀死某个数据库上的所有会话 

Use master
Go
Alter Proc Proc_KillSpidByDatabaseName
@dbname varchar(50)
As
Begin
    If DB_ID(@dbname) Is Null
        Begin
            Print “Database doesn””t exist.”
        End
    If DB_ID(@dbname) <= 4
        Begin
            Print “Only user processes can be killed.”
            Return
        End

    Declare @KillSpid Varchar(Max)
    Select @KillSpid = Coalesce(@KillSpid+”; “,””) + “Kill ” + Cast(spid as varchar(10)) from sys.sysprocesses Where dbid = DB_ID(@dbname)
    If Len(@KillSpid) > 0
        Begin
            Print @KillSpid
            Exec (@KillSpid)
            Print “Executed successfully.”
        End
    Else
        Begin
            Print “No connecting on ” + @dbname
        End
End

六、sys.sysprocesses列名描述

spid smallint SQL Server 进程 ID。 
kpid smallint Microsoft Windows NT 4.0® 线程 ID。 
blocked smallint 分块进程的进程 ID (spid)。 
waittype binary(2) 保留。 
waittime int 当前等待时间(以毫秒为单位)。当进程不处于等待时,为 0。 
lastwaittype nchar(32) 表示上次或当前等待类型名称的字符串。 
waitresource nchar(32) 锁资源的文本化表示法。 
dbid smallint 当前正由进程使用的数据库 ID。 
uid smallint 执行命令的用户 ID。 
cpu int 进程的累计 CPU 时间。无论 SET STATISTICS TIME ON 选项是 ON 还是 OFF,都为所有进程更新该条目。 
physical_io int 进程的累计磁盘读取和写入。 
memusage int 当前分配给该进程的过程高速缓存中的页数。一个负数,表示进程正在释放由另一个进程分配的内存。 
login_time datetime 客户端进程登录到服务器的时间。对于系统进程,是存储 SQL Server 启动发生的时间。 
last_batch datetime 客户端进程上次执行远程存储过程调用或 EXECUTE 语句的时间。对于系统进程,是存储 SQL Server 启动发生的时间。 
ecid smallint 用于唯一标识代表单个进程进行操作的子线程的执行上下文 ID。 
open_tran smallint 进程的打开事务数。 
status nchar(30) 进程 ID 状态(如运行、休眠等)。 
sid binary(85) 用户的全局唯一标识符 (GUID)。 
hostname nchar(128) 工作站的名称。 
program_name nchar(128) 应用程序的名称。 
hostprocess nchar(8) 工作站进程 ID 号。 
cmd nchar(16) 当前正在执行的命令。 
nt_domain nchar(128) 客户端的 Windows NT 4.0 域(如果使用 Windows 身份验证)或信任连接的 Windows NT 4.0 域。 
nt_username nchar(128) 进程的 Windows NT 4.0用户名(如果使用 Windows 身份验证)或信任连接的 Windows NT 4.0 用户名。 
net_address nchar(12) 指派给每个用户工作站上的网络接口卡唯一标识符。当用户登录时,该标识符插入 net_address 列。 
net_library nchar(12) 用于存储客户端网络库的列。每个客户端进程都在网络连接上进入。网络连接有一个与这些进程关联的网络库,该网络库使得这些进程可以建立连接。有关更多信息,请参见客户端和服务器 Net-Library。 
loginame nchar(128) 登录名。

 

个人学习记录(来源网络)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/9977.html

(0)
上一篇 2023-01-28 12:30
下一篇 2023-01-28 13:30

相关推荐

  • 使用Python创建文件夹

    使用Python创建文件夹创建文件夹是在编写Python程序时经常需要用到的操作之一。在Python中,我们可以使用多种方法来创建文件夹。无论我们使用哪种方法,都是基于操作系统提供的API来完成的。

    2024-06-14
    50
  • 用PyQt5实现QLineEdit

    用PyQt5实现QLineEditQLineEdit是PyQt5的核心类之一,它是一个编辑文本的窗口组件。在本文中,我们将会详细介绍如何使用PyQt5来实现QLineEdit。

    2024-05-08
    77
  • Linux下的 Mysql 8.0 yum 安装 并修改密码「终于解决」

    Linux下的 Mysql 8.0 yum 安装 并修改密码「终于解决」1.MySQL版本: mysql> select @@version;+ +| @@version |+ +| 8.0.18 |+ +1 row in set (0.00 sec) 2.Cent

    2023-01-31
    156
  • [命令行]Mysql 导入 excel 文件

    [命令行]Mysql 导入 excel 文件将 excel 表格中的数据批量导入数据库中 将要导入的表删除字段名,只留下要导入的数据。 将文件另存为 *.csv格式,可以用记事本打开(实际上就是标准的逗号分隔的数据 进入mysql,输入命令,打

    2023-04-26
    163
  • Python控制语句中elif的用法

    Python控制语句中elif的用法在Python中,elif是控制语句之一,用于在多个if语句之间添加一个新的判断条件,来实现更加灵活的代码逻辑。

    2024-04-03
    72
  • Python工程师解读星空代码

    Python工程师解读星空代码如今,在计算机编程中,Python语言已成为前端开发、数据分析、人工智能领域流行的语言之一。Python作为一个功能强大的高级编程语言,可以应用在多个领域。其中,它在a href=”https://www.starrysky.org/” target=”_blank” rel=”noopener”星空/a项目中也大放异彩。Python工程师的任务就是理解并优化这些代码,使其更加高效、可读和易于维护。

    2024-06-09
    47
  • 使用Python编写Dockerfile

    使用Python编写Dockerfilea href=”https://beian.miit.gov.cn/”苏ICP备号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-07-27
    41
  • Python SFunction:实现高效率代码算法优化

    Python SFunction:实现高效率代码算法优化在编写Python代码时,常常遇到性能问题。在处理大量数据或复杂的算法中,性能问题可能会导致程序运行缓慢或甚至崩溃。为了解决这些问题,在Python中使用SFunction可以实现高效率代码算法优化。

    2023-12-23
    109

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注