zoukankan      html  css  js  c++  java
  • MSSQL·查看表锁进程及杀死进程的脚本

    阅文时长 | 0.59分钟 字数统计 | 955.2字符
    主要内容 | 1、引言&背景 2、声明与参考资料
    『MSSQL·查看表锁进程及杀死进程的脚本』
    编写人 | SCscHero 编写时间 | 2021/8/10 AM11:52
    文章类型 | 系列 完成度 | 已完成
    座右铭 每一个伟大的事业,都有一个微不足道的开始。

    一、引言&背景   完成度:100%

    a) 应对问题

    1. 如何查看表锁进程?
    2. 如何查看资源等待的脚本?
    3. 如何杀死指定的表锁进程?
    4. With Lock的如何使用?

    b) 应对场景

    1. 适用于MSSQL下表锁、资源等待的场景。
    2. 从现象上来说,表现为执行脚本或存储过程异常缓慢。

    c) 解决原理&方法

    1. 查看表锁进程。
    SELECT SPID=request_session_id, TABLENAME=OBJECT_NAME(resource_associated_entity_id), *
    FROM sys.dm_tran_locks
    WHERE resource_type='OBJECT';
    
    1. 查看资源等待的脚本。
    SELECT r.session_id, s.login_name, r.status, blocking_session_id, blocks.login_name AS blockingLoginName, blocks.open_transaction_count AS blockingOpenTransCount, blocks.status AS blockingSessionStatus, r.start_time, s.client_interface_name, s.host_name, wait_type, wait_time, wait_resource, transaction_id, r.command, DB_NAME(r.database_id), CONVERT(DECIMAL(10, 2), r.estimated_completion_time / 1000.0 / 60.0 / 60.0) AS [ETA hours], CONVERT(VARCHAR(1000), (SELECT SUBSTRING(text, r.statement_start_offset / 2, CASE WHEN r.statement_end_offset=-1 THEN 1000 ELSE (r.statement_end_offset-r.statement_start_offset)/ 2 END)
    FROM sys.dm_exec_sql_text(sql_handle) ))
    FROM sys.dm_exec_requests r
         LEFT JOIN sys.dm_exec_sessions blocks ON r.blocking_session_id=blocks.session_id
         LEFT JOIN sys.dm_exec_sessions s ON r.session_id=s.session_id
    WHERE 1=1 AND(r.status IN (N'suspended', N'running')OR blocking_session_id<>0);
    
    1. 杀死指定的表锁进程。
    KILL [SPID] --[SPID]即为表锁进程ID
    
    1. With Lock的使用方式,在不想要锁表的地方加上。
    SELECT * FROM [TABLE] WITH(NOCOCK)
    

    二、声明与参考资料   完成度:100%

    原创博文,未经许可请勿转载。

    如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。

  • 相关阅读:
    JavaScript作用域
    JavaScript数据类型
    CSS页面布局(二)
    CSS页面布局(一)
    CCS界面组件
    JavaScript面向对象设计
    python-序列化与反序列化
    python-常用模块
    python-re模块
    python-匿名函数
  • 原文地址:https://www.cnblogs.com/SCscHero/p/15123090.html
Copyright © 2011-2022 走看看