Mysql如何查看未提交的事务

我们可以看到在应用程序中使用了多少未提交的事务吗?

可以看到MySQL服务器当前正在运行多少未提交的事务。

根据MySQL的版本,有几种选择。这些在下面描述。


The INFORMATION_SCHEMA INNODB_TRX Table  In MySQL 5.5 And Later

查找活动InnoDB事务的最佳方式是使用 information_schema.INNODB_TRX 表:

mysql> SELECT trx_id, trx_mysql_thread_id, trx_state, trx_started, trx_isolation_level, trx_query FROM information_schema.INNODB_TRX; +--------+---------------------+-----------+---------------------+---------------------+----------------------------------------------------------------------------------------------+ | trx_id | trx_mysql_thread_id | trx_state | trx_started | trx_isolation_level | trx_query | +--------+---------------------+-----------+---------------------+---------------------+----------------------------------------------------------------------------------------------+ | 7000 | 46 | RUNNING | 2016-07-26 09:23:14 | REPEATABLE READ | LOAD DATA LOCAL INFILE 'CountryLanguage.txt' INTO TABLE 'CountryLanguage' CHARACTER SET utf8 | | 6689 | 43 | RUNNING | 2016-07-26 09:17:12 | REPEATABLE READ | NULL | +--------+---------------------+-----------+---------------------+---------------------+----------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)