这个文章分析就是错的。
首先 INSERT INTO order_record SELECT * FROM order_today WHERE pay_success_time < '2020-03-08 00:00:00' 这个语句会对 order_today 加表锁吗?很显然不会,因为mysql有mvcc功能,单纯的select操作并不会加锁。除非你在 where 条件后面加了 for update 或者 lock in share mode。你之所以运行 23秒 结束,说实在的就是因为你走了全表扫描并且IO能力跟不上,与上面的语句无关。可怜用人背锅了。