Để tự động hủy truy vấn trong MySQL sau một thời gian dài thực thi:
-
Tạo một thủ tục được lưu trữ dưới dạng:
DECLARE CURSOR cur1 FOR SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND = 'Query' AND TIME > 120;
thì bên trong vòng lặp của curosr thực hiện:
FETCH ID INTO @var_kill_id; KILL QUERY @var_kill_id;
-
Tạo
EVENT FOR EVERY 5 SECONDS
và chỉ cầnCALL
quy trình trên bên trong nó.
Lưu ý:KILL QUERY chỉ giết truy vấn và kết nối MySQL không bị hỏng. xem tại đây .