如何停止正在运行的 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 中正在运行两个进程,如果你想停止其中一个进程,那么你可以使用上面的语法和特定的 id 使用“KILL”

查询如下 – p>

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 查询?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

上一篇 CentOS启动集成小组,帮助在RHEL及CentOS发行版中构建服务
下一篇 仅对 MySQL 中会话变量第一次出现的字符执行搜索/替换