mysql查看锁表的sql

发布时间: 2023-11-21 10:57 阅读: 文章来源:1MUMB566PS

查看表是否被锁:直接在mysql命令行执行:show engine innodb status\G。

查看造成死锁的sql语句,分析索引情况,然后优化sql.

然后show processlist,查看造成死锁占用时间长的sql语句。

show status like ‘%lock%。

查看表被锁状态和结束死锁步骤:

1.查看表被锁状态

show OPEN TABLES where In_use > 0; 这个语句记录当前锁表状态

2.查询进程

show processlist 查询表被锁进程

查询到相应进程kill id

3.分析锁表的SQL

分析相应SQL,给表加索引,常用字段加索引,表关联字段加索引

查看正在锁的事物:

select * FROM INFORMATION_SCHEMA.INNODB_LOCKS.

查看等待锁的事物:

select * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS.

•••展开全文