我在LOAD DATA INFILEInnoDB表上使用,我看到"系统锁定"状态SHOW PROCESSLIST.在这种情况下,InnoDB究竟锁定了什么?如何查看锁定的内容?
您的问题分为两部分:LOAD DATA INFILEInnoDB 中实际锁定了什么,以及如何检查锁定.
该LOAD DATA INFILE命令基本上只是一种更有效的方式来执行多行INSERT,它将锁定完全相同的东西INSERT.作为LOAD DATA INFILE被处理时,对于表中的每个索引被加载到,从行正在加载的键被锁定有一个专用的行锁.
当它LOAD DATA INFILE正在运行时,您将能够看到有关其锁定的一些整体统计信息SHOW ENGINE INNODB STATUS.如果启用InnoDB锁定监视器,您可以查看有关每个锁定的更多详细信息(直到某一点).