Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để dừng truy vấn MySQL đang chạy?

Để dừng một truy vấn MySQL đang chạy, chúng ta có thể sử dụng lệnh KILL với id quy trình. Cú pháp như sau -

kill processId;

Hoặc bạn có thể dừng một truy vấn MySQL đang chạy với sự trợ giúp của cú pháp dưới đây -

call mysql.rds_kill(queryId);

Đầu tiên chúng ta hãy lấy processId với sự trợ giúp của lệnh show. Truy vấn như sau -

mysql> show processlist;

Đây là đầu ra với danh sách các quy trình -

+----+-----------------+-----------------+----------+---------+--------+------------------------+------------------+
| 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)

Ở đây, hai quy trình đang chạy trong MySQL và nếu bạn muốn dừng một trong số chúng, thì bạn có thể sử dụng cú pháp trên với id cụ thể bằng cách sử dụng “KILL”

Truy vấn như sau -

mysql> kill 47;
ERROR 1317 (70100): Query execution was interrupted

Ngoài ra, bạn có thể thực hiện việc này với mysql.rds_kill (id). Truy vấn như sau -

mysql> CALL mysql.rds_kill(47);
ERROR 2013 (HY000): Lost connection to MySQL server during query