如何杀死MySQL进程

时间:2020-02-23 14:39:24  来源:igfitidea点击:

有时,MySQL查询会花费很长时间,并减慢数据库处理速度。
我们可以找到并消除这些卡住的进程。

MySQL Kill过程步骤

MySQL Kill Process涉及运行两个命令。

  • 使用" show processlist"命令查找正在运行的进程。

  • 使用kill ID命令杀死该进程。

1.查找卡住的MySQL进程

我正在使用root用户显示所有用户的进程。
如果您使用的是特定于数据库的用户,则将仅获得该数据库的结果。

MariaDB [(none)]> show processlist;
+--------+------------+-----------+------------+---------+------+---------------------------------+-----------------------------+----------+
| Id     | User       | Host      | db         | Command | Time | State                           | Info                        | Progress |
+--------+------------+-----------+------------+---------+------+---------------------------------+-----------------------------+----------+
| 566697 | jour_wp    | localhost | jour_wp    | Query   | 1130 | Waiting for table metadata lock | OPTIMIZE TABLE wp_comments  |    0.000 |
| 566698 | jour_wp    | localhost | jour_wp    | Query   | 1130 | Waiting for table level lock    | OPTIMIZE TABLE wp_comments  |    0.000 |

从输出中可以清楚地看到,这些过程被卡滞了1000秒钟以上。

查询仅显示查询的100个字符。
如果这还不够,请使用" SHOW FULL PROCESSLIST"命令获取完整的查询信息。

2.通过ID杀死MySQL进程

show processlist命令显示MySQL进程ID。
我们可以运行kill ID命令终止它们。

MariaDB [(none)]> kill 566697;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> kill 566698;
Query OK, 0 rows affected (0.00 sec)

我们可以再次检查进程列表,以确保清除所有卡住的进程。