sqlserver查询阻塞进程及阻塞的语句

select t1.blocked as '阻塞的进程id',
    OBJECT_NAME(t2.resource_associated_entity_id) as '阻塞的表',
    t3.hostname as '阻塞进程-hostname',
    t3.nt_domain as '阻塞进程-nt_domain',
    t3.nt_username as '阻塞进程-nt_username',
    t3.loginame as '阻塞进程-loginame'
from master..sysprocesses t1
inner join sys.dm_tran_locks t2 on t1.blocked = t2.request_session_id and t2.resource_type = 'OBJECT'
inner join master..sysprocesses t3 on t1.blocked = t3.spid
where t1.blocked > 0

根据阻塞进程id查询阻塞代码

DBCC INPUTBUFFER (93)

杀死阻塞进程

kill 93

查询连接数

select * from master.dbo.sysprocesses
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当在SQL Server中执行任务时遇到阻塞,可以通过以下步骤解决: 1. 查找阻塞进程:使用以下命令查找正在运行的进程和被阻塞进程: ``` SELECT L.request_session_id AS SPID, DB_NAME(L.resource_database_id) AS DatabaseName, O.Name AS LockedObjectName, P.object_id AS LockedObjectId, L.resource_type AS LockedResource, L.request_mode AS LockType, ST.text AS SqlStatementText, ES.login_name AS LoginName, ES.host_name AS HostName, TST.is_user_transaction as IsUserTransaction, AT.name as TransactionName, CN.auth_scheme as AuthenticationMethod FROM sys.dm_tran_locks L JOIN sys.partitions P ON P.hobt_id = L.resource_associated_entity_id JOIN sys.objects O ON O.object_id = P.object_id JOIN sys.dm_exec_sessions ES ON ES.session_id = L.request_session_id JOIN sys.dm_exec_connections CN ON CN.session_id = ES.session_id JOIN sys.dm_tran_session_transactions TST ON ES.session_id = TST.session_id JOIN sys.dm_tran_active_transactions AT ON TST.transaction_id = AT.transaction_id CROSS APPLY sys.dm_exec_sql_text(CN.most_recent_sql_handle) AS ST WHERE resource_database_id = DB_ID() ``` 2. 结束阻塞进程:根据查询结果中的SPID,使用以下命令结束阻塞进程: ``` KILL <SPID> ``` 3. 优化查询语句:如果阻塞问题由查询语句引起,则需要分析查询语句并进行优化,以减少阻塞的可能性。可以使用SQL Server Profiler或Extended Events等工具来分析查询语句并查找潜在的性能问题。 4. 调整事务隔离级别:如果阻塞问题由并发事务引起,则可以考虑调整事务隔离级别,例如将隔离级别降低为READ COMMITTED。 5. 增加硬件资源:如果阻塞问题由资源瓶颈引起,则可以考虑增加硬件资源,例如增加CPU、内存或磁盘容量等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戏子 丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值