如何查看MySQL数据库的死锁信息

如何查看MySQL数据库的死锁信息,第1张

使用终端或命令提示符登录到MySQL,输入命令:

mysql -h xxxx.xxx.xxx -P 3306 -u username -p password

在MySQL客户端下输入命令:

show engine innodb status \G

在打印出来的信息中找到“LATEST DETECTED DEADLOCK”一节内容,分析其中的内容,我们就可以知道最近导致死锁的事务有哪些。

exec sp_lock 快捷键 C_2

exec sp_who active exec sp_who快捷键 C_1

用Profiler里面的Locks->Deadlock graph 监控看看,如果看到了死锁图,就可以比较形象地展现死锁发生的过程,还可以看到锁的具体类型和过程里面的语句,对你诊断会有帮助。

Declare @LockTab table( spid int,dbid int ,ObjId int,IndId int ,Type varchar(50),Resource varchar(50),Mode varchar(50),Status varchar(50))

insert into @LockTab exec sp_lock

Declare @ActiveTab table(spid int,ecid int,status varchar(50),loginname varchar(50),hostname varchar(50),blk int,dbname varchar(50),cmd varchar(50),request_id int)

insert into @ActiveTab exec sp_who active

select * from @LockTab lt

left join @ActiveTab at on lt.spid=at.spid


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9387425.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存