MySql查询正在进行中的事务

时间:2023-03-08 17:33:07

用法

SELECT * FROM information_schema.INNODB_TRX
这个只能查询此刻正在进行中的事务,已经完成的是查不到的

表字段定义

The INFORMATION_SCHEMA INNODB_TRX Table
(https://dev.mysql.com/doc/refman/5.7/en/innodb-trx-table.html)

用法展示

1.会话1进行事务修改,修改耗时较长,在此过程中我们在另外会话来查询
BEGIN;

UPDATE salaries SET salary = 61118 WHERE emp_no % 7 = 0;
(耗时较长,迅速进行步骤2)
2.会话2查询
MySql查询正在进行中的事务

3.会话1的事务结束后,(未提交)再到会话2查询
MySql查询正在进行中的事务
(会话未结束,但已经没有正在执行的sql语句)

4.提交会话1的事务
commit;
切换到会话2来查询:
MySql查询正在进行中的事务