Не работает опция MySQL max_user_connections
Добавлено: 2013-04-08 15:28:25
Обнаружил жесть.
В my.cnf прописал max_user_connections = 5 и max_connections = 100
В таблице mysql.user для пользователя сделал max_user_connections и max_connections = 5
Перезагрузил мускуль.
Дальше под пользователем (не под рутом) выполняю такой скрипт:
И с ужасом обнаруживаю что он отрабатывает без ошибок. OK, ставлю max_user_connections=1 - в этом случае скрипт вылетает на втором коннекте как и положено. Едем далее. Ставим max_user_connections = 2 и несколько раз выполняем скрипт. При таком лимите скрипт вообще подключается к базе рандомное количество раз! Причём скачки очень существенные: от ста до нескольких тысяч подключений. У меня такое чувство что эта опция определяется динамически в зависимости от нагрузки на сервер.
Кто нибудь попробуйте проделать тот-же эксперимент, прошу поделиться результатами.
В my.cnf прописал max_user_connections = 5 и max_connections = 100
В таблице mysql.user для пользователя сделал max_user_connections и max_connections = 5
Перезагрузил мускуль.
Дальше под пользователем (не под рутом) выполняю такой скрипт:
Код: Выделить всё
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'on');
for ($j=0; $j<10000; $j++) {
$ok = mysql_connect('localhost', 'username', 'pass', true);
if (!is_resource($ok)) die("$j: " . mysql_error() . "\n");
mysql_select_db('dbname');
mysql_query('select 123');
}
echo "done\n";
?>
Кто нибудь попробуйте проделать тот-же эксперимент, прошу поделиться результатами.