Mysql too many connections

Вариант А
В случае медленных запросов, оптимизируем их, добавляем индексы и т.д.

Вариант Б
Одновременные соединения. В этом случае распределяем их на разное время запуска, чтобы они были выполнены не в одинаковое время. Т.е. убрать вот такие варианты:

1
2
3
4
$otime = date('i');
while ( true ) {
if ( $otime != date('i') ) { mysql_query('SELECT 1'); $otime = date('i'); }
}

А может быть оптимизация кода Вам не подойдет, тогда можно увеличить кол-во одновременных подключений. Это делается в файле конфигурации mysql, а именно /etc/my.cnf, вот в этой строчке:

1
max_connections = 250

Стандартное значение после установки 100. После внесения изменений, нужно рестартануть демона mysqld, делается это командой:

1
/etc/init.d/mysqld restart

и теперь можно проверить, все ли ок, sql запросом:

1
SHOW VARIABLES LIKE 'max_connections'

Вот и всё. Не забывайте делать резервные копии перед внесением изменений в конфигурационные файлы!