MySQL - too many connections

12 3
DA
На сайте с 04.02.2005
Offline
165
6038

Версия сервера: 5.1.33

Версия MySQL-клиента: 5.1.33

PHP расширение: mysql

по ночам когда идет индексация сайта(сайт очень большой) яндексом кол-во соединений увеличивается до предела (120) и после этого подключения невозможны. текущие запросы в слипе.

причем:

$ mysql -l root
ERROR 1040 (08004): Too many connections

то есть соединение +1 тоже не работает

[root@kvadroom /usr/home/alien]# /usr/local/etc/rc.d/mysql-server stop
Stopping mysql.
Waiting for PIDS: 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499, 1499^C

и так можно ждать до бесконечности.

приходится делать kill процессу и заново запускать базу.

при этом на процессор нагрузки нет никакой.

FreeBSD 7.0, 2xQuad Xeon 2.23, 4GB, SAS

my.cnf

[mysqld]
query_cache_type=1
query_cache_size=5000000
query_cache_limit=400000
table_cache=500
max_heap_table_size=170000000
max_connections=1200
key_buffer_size=44M
sort_buffer=22M
read_buffer_size=40M
delayed_insert_limit=5000
delayed_insert_timeout=600
max_allowed_packet=100M
#log=/mysql/mysql.log

подскажете куда копать?

тыщ-пыщ
C2
На сайте с 14.07.2009
Offline
83
#1

хмм my.cnf точно этот применяется,а не другой?

кол-во соединений увеличивается до предела (120)

max_connections=1200

cyber2 добавил 29.11.2009 в 14:39

SHOW VARIABLES LIKE '%timeout%';

SHOW VARIABLES LIKE '%connections%';

Andreyka
На сайте с 19.02.2005
Offline
822
#2

Кешировать надо

Не стоит плодить сущности без необходимости
N
На сайте с 06.05.2007
Offline
419
#3

Andreyka, какова вероятность что яндекс придет на один и тот же URL более одного раза за ночь? и что именно вы предлагает кешировать ?

Я так думаю, тут надо или думать или платить.

Кнопка вызова админа ()
M
На сайте с 16.09.2009
Offline
278
#4

все-таки 120 или 1200 ?

1200 на вашем конфиге - слишком много.

то есть соединение +1 тоже не работает

проверьте, может кому-то из пользователей дали GRANT SUPER (одно соединение всегда резервируется для административных аккаунтов). либо у вас мониторинг какой-нибудь

делает запрос к mysql от root, одновременно с вами :).

это более вопрос к программисту/дба: нужно смотреть, какие запросы выполняются в

проблемный момент, какие индексы используются, структуру базы etc...

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
DA
На сайте с 04.02.2005
Offline
165
#5

запросы исполняются абсолютно элементарные....и они почему-то все в слипе..по факту все эти запросы должны исполнится ВСЕ за одну секунду....

кэширование есть, смотрите конфиг. он точно подцелпяется.

DJ_AlieN добавил 01.12.2009 в 00:14

Убавил до 1000 соединений.

cyber2:
хмм my.cnf точно этот применяется,а не другой?
max_connections=1200

cyber2 добавил 29.11.2009 в 14:39
SHOW VARIABLES LIKE '%timeout%';
SHOW VARIABLES LIKE '%connections%';

mysql> SHOW VARIABLES LIKE '%timeout%';

+----------------------------+-------+

| Variable_name | Value |

+----------------------------+-------+

| connect_timeout | 10 |

| delayed_insert_timeout | 600 |

| innodb_lock_wait_timeout | 50 |

| innodb_rollback_on_timeout | OFF |

| interactive_timeout | 28800 |

| net_read_timeout | 30 |

| net_write_timeout | 60 |

| slave_net_timeout | 3600 |

| table_lock_wait_timeout | 50 |

| wait_timeout | 28800 |

+----------------------------+-------+

mysql> SHOW VARIABLES LIKE '%connections%';

+----------------------+-------+

| Variable_name | Value |

+----------------------+-------+

| max_connections | 1000 |

| max_user_connections | 0 |

+----------------------+-------+

2 rows in set (0.00 sec)

Andreyka
На сайте с 19.02.2005
Offline
822
#6
netwind:
Andreyka, какова вероятность что яндекс придет на один и тот же URL более одного раза за ночь? и что именно вы предлагает кешировать ?

Предлагаю крутить кеширование MySQL.

O
На сайте с 13.08.2008
Offline
26
#7
cyber2:
max_connections=1200

За такое - надо отводить за бруствер и расстреливать на глазах личного состава.

Outsourcenow.ru: оттюним ваш веб-сервер. 100 млн. запросов в сутки - наш размерчик!
C2
На сайте с 14.07.2009
Offline
83
#8
Outsourcenow:
За такое - надо отводить за бруствер и расстреливать на глазах личного состава.

согласен, пусть DJ_AlieN сам себя и растреляет - это из его конфига цитата. ;)

M
На сайте с 16.09.2009
Offline
278
#9
DJ_AlieN:
кэширование есть, смотрите конфиг. он точно подцелпяется.

а насколько эффективно работает?

mysqladmin extended-status | grep -i cache

что в mysqladmin proc на момент проблемы? Статус запросов? Sleep? Locked? ??

какие ресурсы сервера на тот момент заняты по топу. может mysql память выжрал всю?

с вашим конфигом это вероятно - ему ресурсов дадено много больше чем есть.

DA
На сайте с 04.02.2005
Offline
165
#10

когда все висело стоял лимит на 120 соединений и я считал что это норма.....

DJ_AlieN добавил 01.12.2009 в 12:43

myhand:
а насколько эффективно работает?
mysqladmin extended-status | grep -i cache

что в mysqladmin proc на момент проблемы? Статус запросов? Sleep? Locked? ??

какие ресурсы сервера на тот момент заняты по топу. может mysql память выжрал всю?
с вашим конфигом это вероятно - ему ресурсов дадено много больше чем есть.

эффективно. нагрузка на сервер минимальная. + еще стоит memcached , memory таблицы.

среднее время генерации страницы 0.03c

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий