Mysq存储过程强行停止后,再次执行[Err] 1213 – Deadlock found when trying to get lock; try restarting transaction。
出现临时表上
CREATE temporary TABLE `TMP_CUID` (
`CUID` int(11) NOT NULL AUTO_INCREMENT,
`UID` int(11) NOT NULL,
PRIMARY KEY (`CUID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into TMP_CUID
(UID)
select cid from t limit 1;
出现在这句insert上 。
出现临时表上
CREATE temporary TABLE `TMP_CUID` (
`CUID` int(11) NOT NULL AUTO_INCREMENT,
`UID` int(11) NOT NULL,
PRIMARY KEY (`CUID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into TMP_CUID
(UID)
select cid from t limit 1;
出现在这句insert上 。
解决方案
50
这个语句里select部分会锁定整个表。