select a.trx_id,a.trx_started,a.trx_mysql_thread_id,a.trx_query,b.time,b.user,b.db,b.host
from information_schema.innodb_trx a
left join information_schema.processlist b on a.trx_mysql_thread_id= b.id order by b.time desc\\G
这个可以满足你的需求,根据时间排序,查询出目前有哪些执行了多久的事务
大事务的话,你可以单独查information_schema.innodb_trx,里面会记录影响行数等信息