SQL SERVER 事务与锁相关DMV、设置和命令
与执行相关的DMV:
连接:sys.dm_exec_connections 返回与 SQL Server 实例建立的连接有关的信息以及每个连接的详细信息
会话:sys.dm_exec_sessions 针对 SQL Server 上的每个经过身份验证的会话返回一行。
请求:sys.dm_exec_requests 返回有关在 SQL Server 中执行的每个请求的信息
sys.dm_exec_sql_text 返回由指定的 sql_handle 标识的 SQL 批处理的文本
注:
一般情况下, Connection就可以看做Session. 一个connection对应多个session的情况非常少见.
一个Session中可以有多个request, 比如说一个查询语句, 一次存储过程的调用都是request.
参考:https://www.cnblogs.com/awpatp/archive/2010/12/20/1911448.html
与事务相关DMV:
sys.dm_tran_locks: 返回有关当前活动的锁管理器资源的信息。向锁管理器发出的已授予锁或正等待授予锁的每个当前活动请求分别对应一行。
set lock_timeout 5000 设置会话锁超时期限为5000毫秒
kill @spid 结束进程@spid
设置事务的隔离级别:
SET TRANSACTION ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED --默认值 | REPEATABLE READ | SNAPSHOT | SERIALIZABLE }
或者在查询中使用表提示来设置隔离级别:
select * from <table> with (<isolationname>) --表提示中的隔离级别的名称不需要空格
举例:
查询指定连接最后调用的批处理代码:
select c.session_id,t.text from sys.dm_exec_connections c cross apply sys.dm_exec_sql_text(c.most_recent_sql_handle) as t where c.session_id = @@SPID --@@SPID代表当前会话
或者:
dbcc inputbuffer(53) --查询spid = 53 的最后一个语句
分类:
SQL SERVER 管理
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧