簡體   English   中英

如何停止 MySQL 中正在運行的過程?

[英]How to stop a running procedure in MySQL?

我在 MySQL 中調用了一個過程,但它現在處於無限循環中! 如何停止 MySQL 中正在運行的過程? 以下是我的程序代碼:

drop procedure if exists my_proc; 
DELIMITER $$
CREATE PROCEDURE my_proc
()
BEGIN
DECLARE VAR INT;
SET VAR=0;
WHILE VAR<10000
DO
INSERT INTO my_table () VALUES ();
END WHILE;
END; $$
DELIMITER;

CALL my_proc();

連接到服務器(或使用phpmyadmin或類似的東西)並執行:

SHOW PROCESSLIST;

找到導致問題的過程,記下其ID並執行:

KILL ID_OF_YOUR_PROCESS;

我有同樣的問題,列表中沒有程序。 但是我看到在過程中的循環中執行了嵌套(內部)INSERT 查詢。 該行的狀態類似於“查詢結束”。 然后我根據 id 殺死了它,並且我的表中沒有填充新數據。 所以我認為程序真的停止了

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM