MySQL 如何停止正在运行的MySQL查询?
为了停止正在运行的MySQL查询,我们可以使用带有进程ID的KILL命令。 语法如下−
kill processId;
或者,您可以使用以下语法来停止正在运行的MySQL查询−
call mysql.rds_kill(queryId);
首先,让我们使用show命令获取processId。 查询如下−
mysql> show processlist;
这是具有进程列表的输出−
+----+-----------------+-----------------+----------+---------+--------+------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-----------------+-----------------+----------+---------+--------+------------------------+------------------+
| 4 | event_scheduler | localhost | NULL | Daemon | 221718 | Waiting on empty queue | NULL |
| 47 | root | localhost:60722 | business | Query | 0 | starting | show processlist |
+----+-----------------+-----------------+----------+---------+--------+------------------------+------------------+
2 rows in set (0.03 sec)
在这里,MySQL中正在运行两个进程,如果您想停止它们中的一个,则可以使用上面的语法,使用“KILL”并使用特定ID。
查询如下−
mysql> kill 47;
ERROR 1317 (70100): Query execution was interrupted
或者,您可以使用mysql.rds_kill(id)实现此目的。 查询如下−
mysql> CALL mysql.rds_kill(47);
ERROR 2013 (HY000): Lost connection to MySQL server during query
阅读更多:MySQL 教程
极客教程