什么是交易没有在SHOW ENGINE INNODB状态中启动?

Mau*_*ora 5 mysql innodb database-deadlocks

以下是"SHOW ENGINE INNODB STATUS"的几行回应;


TRANSACTIONS
------------
Trx id counter 58EC54C6
Purge done for trx's n:o < 58EC54C3 undo n:o < 0
History list length 2420
LIST OF TRANSACTIONS FOR EACH SESSION:
---TRANSACTION 58EC51E6, not started
MySQL thread id 520131, OS thread handle 0x7f0db930e700, query id 24011015 108.89.56.87 xyz
---TRANSACTION 58EC527E, not started
MySQL thread id 520061, OS thread handle 0x7f0dbb596700, query id 24011370 108.89.56.87 xyz
---TRANSACTION 58EC53AC, not started
MySQL thread id 520065, OS thread handle 0x7f0dbb28a700, query id 24012094 108.89.56.87 xyz
---TRANSACTION 58EC50CE, not started
MySQL thread id 520109, OS thread handle 0x7f0dbba69700, query id 24010431 108.89.56.87 xyz    ---TRANSACTION 58EC51E8, not started
MySQL thread id 520123, OS thread handle 0x7f0dbb4d3700, query id 24011016 108.89.56.87 xyz    ---TRANSACTION 58EC51D0, not started
MySQL thread id 520072, OS thread handle 0x7f0db865c700, query id 24010944 108.89.56.87 xyz
---TRANSACTION 58EC5184, not started
MySQL thread id 520058, OS thread handle 0x7f0db8c74700, query id 24010807 108.89.56.87 xyz
Run Code Online (Sandbox Code Playgroud)

我想知道这个"交易转换,未启动"是什么意思?是否有任何查询无法执行?

我正在使用innodb.我也不是手动启动交易.它正在考虑自动交易,因为我在具有批量数据的表上发布更新查询.并且你在5-10分钟内在这张单独的表上获得了mysql更新查询的hundreads.

请让我知道"交易未开始"究竟是什么意思?是显示失败的查询还是只显示普通日志?

提前致谢!

Ran*_*eed 11

线程(〜连接)第一次需要在事务期间锁定某些数据时,会创建事务"对象"(~context).事务"对象"在事务结束时不会被销毁,如果新事务由同一个线程启动,它将被重用.

每个事务显示not started为由当前不在事务内的线程所拥有的事务"对象" (更准确地说,它不需要为事务维护单独的上下文).

thread id是一个显示在Id列当您发出SHOW PROCESSLIST.

这没什么可担心的,实际上这是正常的行为.