广告
返回顶部
首页 > 资讯 > 数据库 >SQL Server 查杀会话连接
  • 156
分享到

SQL Server 查杀会话连接

SQLServer查杀会话连接 2020-05-27 07:05:48 156人浏览 无得
摘要

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

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) 登录名。

 

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

您可能感兴趣的文档:

--结束END--

本文标题: SQL Server 查杀会话连接

本文链接: https://www.lsjlt.com/news/4330.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SQL Server 查杀会话连接
    sysprocesses 表中保存关于运行在 Microsoft® SQL Server™ 上的进程的信息。这些进程可以是客户端进程或系统进程。 Select * From master.sys.sysprocesses   ...
    99+
    2020-05-27
    SQL Server 查杀会话连接
  • oracle查杀连接会话
    由于频繁强制启停tomcat不清理连接等情况时可能导致oracle连接爆满,此时可以使用这个方式清理 --查询 select sess.sid,sess.serial#,sess.machine, lo.oracle_usern...
    99+
    2016-01-22
    oracle查杀连接会话
  • SQL Server 查看当前会话状态【sp_WhoIsActive 转载】
     一.常见简便的方式 通常,DBA使用sp_who和sp_who2系统存储过程或活动监视器来查看SQL实例中的当前会话、用户和进程。 我们还可以从这些过程中确定阻塞会话和活动会话。 1.1. Sp_who 如下: 1.2 Sp_who2...
    99+
    2019-01-28
    SQL Server 查看当前会话状态【sp_WhoIsActive 转载】
  • SQL Server中怎么连接查询
    SQL Server中怎么连接查询,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。什么是连接查询呢?概念:根据两个表或多个表的列之间的关系,从这...
    99+
    2022-10-18
  • 查找和杀掉postgresql堵塞的会话
    查找和杀掉postgresql堵塞的会话1.创建视图,可以随时使用:CREATE VIEW pg_blocking AS SELECTblocked_locks.pid AS blocked_pid...
    99+
    2022-10-18
  • sql server 表连接
    数据库操作中,我们需要的结果可能在两张表甚至多张表中,这时候就需要表连接操作,多表查询中的各个表之间的字段会存在连接,比如主外键关联,可以使用主外键来关联每张表。表连接方式有以下几种: JOIN: 如果表中有至少一个匹配,则返回行 LEF...
    99+
    2022-03-03
    sql server 表连接
  • SQL Server连接查询的实用教程
    前沿小补充 例3.48 查询平均成绩大于等于80分的学生学号和平均成绩 SELECT Sno,AVG(Grade) FROM SC WHERE AVG(Grade...
    99+
    2022-11-12
  • Oracle查询死锁和杀死会话的命令
    这篇文章主要介绍“Oracle查询死锁和杀死会话的命令”,在日常操作中,相信很多人在Oracle查询死锁和杀死会话的命令问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Orac...
    99+
    2022-10-18
  • Python 连接Sql Server数
    Python 想要和MSSql数据库进行交互,首先要下载名为"pymssql"的包,然后import该包即可。地址:https://pypi.python.org/pypi/pymssql/2.1.0#downloads百度云(3.4win...
    99+
    2023-01-31
    Python Sql Server
  • Sql Server Management Studio连接Mysql
    目标 已知mysql连接参数(地址和用户),期望通过Microsoft Sql Server Management Studio (以下简称MSSSMS)连接Mysql,在MSSSMS中直接查询或修改Mysql中的数据。 实现 步骤1/4:...
    99+
    2023-10-23
    mysql 数据库 sql
  • php怎么连接sql server
    在PHP中,可以使用不同的函数来连接SQL Server数据库。根据不同的版本和需求,有以下几种方法可以连接SQL Server。一、mssql_系列函数:主要适用于PHP5.3以下的版本和SQL Server 2000及以上的版本。需要在...
    99+
    2023-09-29
    php android 开发语言
  • python连接SQL Server数据
    方法一: 1、需要安装pymssql   pip install pymssql 2、连接代码: import pymssql conn=pymssql.connect(host='127.0.0.1',user='user',passw...
    99+
    2023-01-31
    数据 python SQL
  • eclipse怎么连接sql server
    要在Eclipse中连接SQL Server,你可以按照以下步骤进行操作:1. 下载并安装JDBC驱动程序:首先,你需要下载适用于S...
    99+
    2023-09-27
    eclipse sql server
  • jeesite4.0连接sql server 2008 r2
    1、刚开始执行init-data.bat报的错误2、执行InitCoreData.java报的错误org.springframework.transaction.CannotCreateTransactio...
    99+
    2022-10-18
  • python连接sql server并执
    python操作sql server,可以使用pymssql,成功安装pymssql后,按照如下的方法,可以连接数据库并执行查询操作: import pymssql #数据库服务器信息 server="localhost" user="...
    99+
    2023-01-31
    python sql server
  • SQL SERVER如何实现连接与合并查询
    这篇文章主要介绍了SQL SERVER如何实现连接与合并查询,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。创建测试表MyStudentInfoCREATE ...
    99+
    2023-06-29
  • SQL SERVER ERROR 40 无法打开SQL SERVER的连接
       这个报错一般两个原因,SQL SERVER实例服务未启动。 或者服务未配置1433端口。 配置1433端口是需要注意,配置一个本地IP的端口,还需要配置一个IPALL的端口,全都配置为1433。SQL SERVER ERROR 40...
    99+
    2021-08-31
    SQL SERVER ERROR 40 无法打开SQL SERVER的连接 数据库入门 数据库基础教程 数据库 mysql
  • navicat连接sql Server的方法
    这篇文章主要介绍navicat连接sql Server的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!SqlServer数据的连接与mysql等数据库的连接差不多,但也有一些差异...
    99+
    2022-10-18
  • Sql Server 2008 【存储过程】 死锁 查询和杀死
    1 . 使用数据库中,可能出现死锁, 导致程序 无法正常使用. Create procedure [dbo].[sp_who_lock] ( @bKillPID Bit=0 -- 0: 查询 1: 结束掉相对应的死锁ID ...
    99+
    2018-08-23
    Sql Server 2008 【存储过程】 死锁 查询和杀死
  • SQL Server数据库连接查询和子查询实战案例
    目录前言1.查询所有学生的学号、姓名、选修课程号和成绩2.查询选修了课程名称为“数据库原理与应用”的学生的学号和姓名3.使用别名实现查询所有学生的学号、姓名、...
    99+
    2023-05-16
    sqlserver连接查询语句 sqlserver子查询 sqlserver子查询语句
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作