MySQL - KILL 語句



使用 MySQL KILL 語句,您可以終止指定的執行緒。

語法

以下是 MySQL KILL 語句的語法:

KILL [CONNECTION | QUERY] processlist_id

其中,processlist_id 是我們需要終止的程序的 ID:

示例

假設我們使用以下所示的 CREATE 語句建立了一個名為 sample 的使用者:

CREATE USER sample;

如果您使用 SHOW 語句驗證當前程序列表,您可以發現三個正在執行的程序。MySQL 命令提示符根使用者(如果您正在執行)、MySQL sample 使用者(從命令提示符連線)和 event_scheduler。

SHOW PROCESSLIST;

輸出

以上查詢產生以下輸出:

Id 使用者 主機 資料庫 命令 時間 狀態
5 event_scheduler localhost NULL 守護程式 2065 等待下一個啟用
9 root localhost: 49996 test 查詢 0 初始化
11 sample localhost: 58238 NULL 休眠 55

以下查詢終止 ID 為 11 的程序:

KILL 11;

終止 sample 程序後,如果您驗證程序列表,您可以觀察到只剩下兩個程序:

SHOW PROCESSLIST;

輸出

查詢執行後,將顯示以下輸出:

Id 使用者 主機 資料庫 命令 時間 狀態
5 event_scheduler localhost NULL 守護程式 2217 等待下一個啟用
9 root localhost: 49996 test 查詢 0 初始化

您可以使用 CONNECTION 子句終止連線:

SHOW PROCESSLIST;

輸出

以上查詢產生以下輸出:

Id 使用者 主機 資料庫 命令 時間 狀態
5 event_scheduler localhost NULL 守護程式 2421 等待下一個啟用
9 root localhost: 49996 test 查詢 0 初始化
15 sample localhost: 58275 NULL 休眠 89
KILL CONNECTION 14;

您可以使用此語句中的 QUERY 子句終止查詢:

SHOW PROCESSLIST;

輸出

以下是上述查詢的輸出:

Id 使用者 主機 資料庫 命令 時間 狀態
5 event_scheduler localhost NULL 守護程式 2720 等待下一個啟用
9 root localhost: 49996 test 查詢 0 初始化
15 sample localhost: 58330 NULL 休眠 9
廣告