可以通过show status like 'innodb_row_lock%';查看系统上的行锁争用情况;
如果Innodb_row_lock_waits和Innodb_row_lock_time_avg 比较大,说明锁争用比较严重,可以查询information_schema数据库中相关表查看锁情况,或者通过设置InnoDB Monitors来进一步观察锁冲突的表、数据行等,分析原因。
(1)、通过查询information_schema数据库中innodb_locks表了解锁等待情况。
SELECT * FROM Innodb_locks \G; 和 SELECT * FROM Innodb_locks_waits \G ;
(2)通过设置InnoDB Monitors观察锁冲突情况。