需求: 执行DDL发生元数据锁等待时需要定位持有锁的SQL 否则直接kill可能的连接时依然有风险 背景: 线上环境未开启 wait/lock/metadata/sql/mdl,因此无法通过 performance_schema.metadata_locks 数据表进行查询 这种情况下,如何快速定位持锁SQL? 个人理解: 1)information_schema.processlist 数据表查询同一张表的慢SQL,但是可能查不到SQL 2)information_schema.innodb_trx 数据表查询同一张表的未提交事务,但是可能查不到SQL 3)performance_schema.events_statements_current 数据表中查询SQL,但是可能查不到SQL 4)performance_schema.events_statements_history 数据表中查询SQL,但是可能查到多条SQL 请教下,有没有更好的办法可以快速定位持锁SQL? |
yejr
2023-3-15 16:05:56
| ||
鸟山明
2023-3-15 16:16:41
| ||
yejr
2023-3-16 18:18:51
| ||
lizibin
2023-3-20 17:18:50
| ||
合作电话:010-64087828
社区邮箱:greatsql@greatdb.com