@DTest - это можно сделать с помощью запроса? У меня нет прямого доступа к серверу.
JIStone
Этот вопрос может пригодиться другим разработчикам и администраторам баз данных (+1) !!!
RolandoMySQLDBA
Ответы:
15
Из командной строки Linux
for PROC_TO_KILL in`mysql -h...-u...-p...-A --skip-column-names -e"SHOW PROCESSLIST" | grep -v "system user" | awk '{print $1}'` ; do mysql -h... -u... -p... -A --skip-column-names -e"KILL QUERY ${PROC_TO_KILL}" ; done
Вы можете изменить опцию grep в заголовке цикла for, чтобы найти конкретного пользователя или конкретную строку в запросе.
Если у вас есть MySQL 5.1, где список процессов находится в INFORMATION_SCHEMA, вы можете сделать это для генерации массовых команд KILL QUERY из клиента mysql:
Вы можете использовать предложения WHERE для поля INFO, чтобы искать конкретный запрос, поле TIME для длительных запросов или поле DB для конкретной базы данных.
Ответы:
Из командной строки Linux
Вы можете изменить опцию grep в заголовке цикла for, чтобы найти конкретного пользователя или конкретную строку в запросе.
Если у вас есть MySQL 5.1, где список процессов находится в INFORMATION_SCHEMA, вы можете сделать это для генерации массовых команд KILL QUERY из клиента mysql:
Вы можете использовать предложения WHERE для поля INFO, чтобы искать конкретный запрос, поле TIME для длительных запросов или поле DB для конкретной базы данных.
источник
http://www.mysqlperformanceblog.com/2009/05/21/mass-killing-of-mysql-connections/
источник