За автоматично унищожаване на заявка в MySQL след дълго време на изпълнение:
-
Създайте съхранена процедура като:
DECLARE CURSOR cur1 FOR SELECT ID FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND = 'Query' AND TIME > 120;
след това вътре в цикъла на curosr направете:
FETCH ID INTO @var_kill_id; KILL QUERY @var_kill_id;
-
Създайте
EVENT FOR EVERY 5 SECONDS
и простоCALL
горната процедура вътре в него.
Забележка:KILL QUERY просто убива заявката и MySQL връзката не е прекъсната. вижте тук .