Спасибо! Поменял OUTPUT на FORWARD - заработало, трафик блокируется. Но при попытке открыть любой сайт по HTTP в браузере соединение закрывается не мгновенно, а через секунд 15 до ERR_CONNECTION_TIMED_OUT. Думал REJECT за это отвечает, но нет. Можно как-то закрывать мгновенно соединения на клиентах впн?
Immortal_pony: Под понятием "скорость" имел ввиду скорость выполнения функции в скрипте. Т.е. запрос может и выполнится за доли секунды, но если есть блокировка, запрос будет ждать ее снятия, а вместе с ним и скрипт будет ждать выполнения функции с этим запросом.
Значит все дело в блокировке.
Тогда почему при innodb тоже бывают тормоза?!
Возможно, что из-за того что при массовом update через insert запрос натыкается на одну или несколько заблокированных строк и ждет снятия блокировки, а скрипт соответственно тоже ждет пока функция завершит работу.
Теперь понял, что вы имели ввиду под slow log для этих запросов. У меня в скрипте свой локальный слоулог еще, который считает время выполнения функции, обращающейся к mysql.
Вы хотите сказать, что блокировка не влияет на скорость вставки?) Я думал блокировка на все операции с записями таблицей влияет, запрос ждет пока снимется блокировка и только потом выполняется.
slow query включен всегда, в том то и дело, что запросы на обновление идентичные, а тормозит только каждый 3-5 последовательный запрос.
Может быть, что после первого запроса mysql начинает перестраивать индекс и поэтому следующий запрос тормозит, пока индекс обновляется?