FastNetMon

Tuesday, 1 December 2009

Got error: 1040: Too many connections when trying to connect

Такая ошибка часто сопровождается такими статусами MySQL:

mysql> show status;
+-----------------------------------+----------+
| Variable_name | Value |
+-----------------------------------+----------+
| Aborted_clients | 171 |
| Aborted_connects | 3 |


При этом настройки сервера БД следующие:


show variables like '%max%connect%';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| max_connect_errors | 10 |
| max_connections | 100 |
| max_user_connections | 0 |
+----------------------+-------+
3 rows in set (0.00 sec)




Открываем конфиг MySQL:
vi /etc/my.cnf


И в блок [mysqld] добавляем следующие строки:

max_connections=2000
max_user_connections=2000
# также рекомендую внести следующую настройку, т.к, с этим тоже бывает много проблем
max_connect_errors=100


Перезапускаем MySQL:

/etc/init.d/mysqld restart



Теперь смотрим статус MySQL:

mysql> show variables like '%max%connect%';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| max_connect_errors | 10 |
| max_connections | 2000 |
| max_user_connections | 2000 |
+----------------------+-------+



Вот и все, тюнинг закончен. Правда одного понять не могу, стандартно в CentOS у MySQL параметр max_user_connections стоит "0". Но вот что это означает я не понял - неограниченно или "стандартное". Если стандартное, то какое число?

2 comments :

  1. Большое спасибо за советы и вообще очень много интересного прочитал на вашем сайте, спасибо )

    ReplyDelete
  2. Спасибо, стараюсь описывать все, с чем на практике сталкиваюсь :)

    ReplyDelete

Note: only a member of this blog may post a comment.