56,937
社区成员




SELECT
TH.processlist_id, -- 这个就是你要的 connection_id, 你可以 kill 这个,达到终止它的操作的目的
TH.processlist_command as command, -- 这个为 sleep,则表明操作结束了,但没有提交事务,也就是事务挂起了
TIMESTAMPDIFF(second, TRX.trx_started, NOW()) as tx_duration, -- 事务已经开启多长时间了
ESC.current_schema, ESC.sql_text -- 这个不一定能查到,最后执行的 SQL(事务中有多个语句时,这个只是最后一个,江代表是产生锁的那个)
FROM performance_schema.threads TH
INNER JOIN information_schema.innodb_trx TRX
ON TRX.trx_mysql_thread_id = TH.processlist_id
LEFT JOIN performance_schema.events_statements_current ESC
ON ESC.thread_id = TH.thread_id