За автоматично унищожаване на заявка в 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 връзката не е прекъсната. вижте тук .