MySQL有两个kill命令:
-
kill query+线程id,表示终止该线程正在执行的语句;
-
kill (connection)+线程id,表示断开这个线程的连接,如果线程有语句正在执行,会先停止正在执行的语句。
有时候可能会遇到:使用了kill,却没能断开该连接,再执行show processlist时,看到这条语句的command列显示的是killed。
那这是什么意思呢?不是应该直接在show processlist结果里看不到这个线程了吗?本文就来讨论该问题。
收到kill后,线程做什么?
比如有一个场景:
