plsql 查询存储过程死锁语句_SQL2005查看死锁存储过程sp_who_lock
下面是我整理的监控sql server数据库,在性能测试过程中是否出现死锁、堵塞的SQL语句,还算比较准备,留下来备用。
调用方法:选中相应的数据库,执行exec sp_who_lock
USE [master]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE procedure [dbo].[sp_who_lock]
as
begin
declare @spid int, @bl int, @intTransactionCountOnEntry int, @intRowcount int, @intCountProperties int, @intCounter int
create table #tmp_lock_who (
id int identity(1,1),
spid smallint,
bl smallint
)
IF @@ERROR<>0 RETURN @@ERROR
insert into #tmp_lock_who(spid,bl) select 0 ,blocked
from (select * from sysprocesses where blocked>0 ) a
where not exists(select * from (select * from sysprocesses where blocked>0 ) b
where a.blocked=spid)
union select spid,blocked from sysprocesses where blocked>0
IF @@ERROR<>0 RETURN @@ERROR
-- 找到临时表的记录数
select @intCountProperties = Count(*),@intCounter = 1
from #tmp_lock_who
IF @@ERROR<>0 RETURN @@ERROR
if @intCountProperties=0
select '现在没有阻塞和死锁信息' as message
-- 循环开始
while @intCounter <= @intCountProperties
begin
-- 取第一条记录
select @spid = spid,@bl = bl
from #tmp_lock_who where Id = @intCounter
begin
if @spid =0
select '引起数据库死锁的是: '+ CAST(@bl AS VARCHAR(10)) + '进程号,其执行的SQL语法如下'
else
select '进程号SPID:'+ CAST(@spid AS VARCHAR(10))+ '被' + '进程号SPID:'+ CAST(@bl AS VARCHAR(10)) +'阻塞,其当前进程执行的SQL语法如下'
DBCC INPUTBUFFER (@bl )
end
-- 循环指针下移
set @intCounter = @intCounter + 1
end
drop table #tmp_lock_who
return 0
end
plsql 查询存储过程死锁语句_SQL2005查看死锁存储过程sp_who_lock相关推荐
- java 如何检测死锁_Java如何查看死锁
Java中当我们的开发涉及到多线程的时候,这个时候就很容易遇到死锁问题,刚开始遇到死锁问题的时候,我们很容易觉得莫名其妙,而且定位问题也很困难. 因为涉及到java多线程的时候,有的问题会特别复杂,而 ...
- mysql查看死锁并杀掉_查看当前进程,或死锁进程,并能自动杀掉死进程_MySQL
/*--处理死锁 查看当前进程,或死锁进程,并能自动杀掉死进程 因为是针对死的,所以如果有死锁进程,只能查看死锁进程 当然,你可以通过参数控制,不管有没有死锁,都只查看死锁进程 --邹建 2004.4 ...
- mysql 杀存储过程进程_SQL SERVER 杀死锁进程存储过程
use master --必须在master数据库中创建 go if exists (select * from dbo.sysobjects where id = object_id( ...
- mysql查看死锁并杀掉_查看当前进程,或死锁进程,并能自动杀掉_mysql
/*--处理死锁 查看当前进程,或死锁进程,并能自动杀掉死进程 因为是针对死的,所以如果有死锁进程,只能查看死锁进程 当然,你可以通过参数控制,不管有没有死锁,都只查看死锁进程 --邹建 2004.4 ...
- lua mysql 死锁_使用 mysqladmin debug 查看死锁信息
使用 mysqladmin debug 查看死锁信息 mysqladmin -S /mysql/data/mysql.sock debug 然后在error日志中,会看到: 11 lock struc ...
- plsql 查询存储过程死锁语句_ORACLE-Kill 杀死正在执行的Oracle存储过程和死锁语句...
存储过程 1.找到正在执行的存储过程的 sid ,serial# select b.sid,b.SERIAL#,a.OBJECT, 'alter system kill session ' | ...
- sql server 查看死锁,以及执行语句
sql server 查看死锁,以及执行语句 第二秒 select t1.resource_type [资源锁定类型], DB_NAME(resource_database_id) as 数据库名, ...
- oracle 杀死过程,ORACLE-Kill 杀死正在执行的Oracle存储过程和死锁语句
1.找到正在执行的存储过程的 sid ,serial# select b.sid,b.SERIAL#,a.OBJECT, 'alter system kill session ' || ''' ...
- mysql死锁查询_Mysql 查看死锁,解除死锁 方式
解除正在死锁的状态有两种方法: 第一种: 1.查询是否锁表 show OPEN TABLES where In_use > 0; 2.查询进程(如果您有SUPER权限,您可以看到所有线程.否则, ...
最新文章
- 阿里云虚拟主机数据库主机怎么看
- 计算机行业越来越卷,AI都会刷LeetCode了,网友:比我强
- dfs入门排列数字问题(一看就懂的讲解)
- C/C++ 语言的常用开发工具下载
- 服务器之select
- Java 数组操作
- 端口扫描 -- scanport和superscan
- 电脑连接了HDMI线,电脑没有声音了,原因和解决办法
- java中交换机的作用_交换机链路聚合在网络中的作用
- yolo数据集剪裁:切割目标框并将该框内的其他目标一并提取并转为可用数据集
- OR青年|可重复使用资源的在线分配问题综述
- 振弦传感器不同线制分类
- 私有云是伪命题:真正的私有云 ≈ 公有云
- 262-Trips and Users
- jenkins 使用过程问题解决方法
- .bat命令脚本简单编写运行
- 注册表去除桌面快捷方式小箭头引起此电脑右键管理无法使用
- RedHat 8 时间同步和时区修改
- amaya网页设计.
- 讲一下dns过程:给一个网址www.google.com,dns服务器如何逐级解析的?
热门文章
- 山海经鸿蒙手游iOS 版本,山海经鸿蒙异兽iOS版
- android 稳定性测试工具,APP 稳定性测试工具-Fastbot_Android详解
- @RequestMapping参数详解
- recyclerview item 点击有背景_如何用RecyclerView实现猫眼电影选择效果
- 机器学习hierarchical clustering_ICLR 2020 | 反事实因果理论如何帮助深度学习?
- 网络编程学习笔记--1.socket可读可写条件
- ubuntu05.04安装,及编译模块问题
- 麦咭早教机器人_号外|「2019第一站」麦咭亮相香港国际授权展!
- ajax传formdata类型的数据_JQuery.Ajax()的data参数类型
- 【深度学习】Swin-Transformer和EfficientNet对比分析