zoukankan      html  css  js  c++  java
  • SQL Server 在线进程分析处理

    SQL Server 在线进程分析处理

    前言

          数据库在线进程处理在很多时候需要人为干预已达到预期管理目标,下面整理一下常用的在线进程管理方法,便于后续工作使用。

    一、查看目标数据库在线进程,并杀死指定进程

    • 检索当前数据库在线进程

           SELECT * FROM sys.sysprocesses WHERE dbid=DB_ID('AdventureWorks')

    • 杀掉指定进程

          kill spid

    二、删除SQL Server在线用户

    • 查询指定用户的当前在线进程

            select spid from sysprocesses where loginame='Login_Name';

    • 杀掉指定进程

          kill spid

    三、查看当前阻塞并清除

    --例如使用master数据库,sa用户进行检索

    use master
    go
    --查看线程,分析blocked 较多的进程,
    SELECT * FROM SYSPROCESSES WHERE blocked >0 order by blocked ;

    --继续查看进程被谁阻塞,分析导致阻塞的源头
    SELECT * FROM SYSPROCESSES WHERE spid =spid_no

    --查看此进程执行的SQL 是哪个,查找问题原因
    dbcc inputbuffer(spid);

    --KILL 掉当前导致阻塞的SQL
    kill spid

  • 相关阅读:
    阅读代码
    openSips
    rc.local 问题
    MyBatis框架使用(一)
    【数据结构杂谈】
    【AGC052A】
    【杜教筛学习笔记】
    CF618F Double Knapsack
    [NOI2016] 循环之美
    【BZOJ 4668 冷战】
  • 原文地址:https://www.cnblogs.com/syforacle/p/5824769.html
Copyright © 2011-2022 走看看