Подобные ошибки или сообщения о невозможности подключения к базе данных могут возникать при автоматическом ограничении создаваемой вашими скриптами нагрузки на MySQL при превышениях, во избежание дестабилизации работы сервера. График нагрузки на MySQL отображается в контрольной панели в соответствующем разделе.
Очень часто к превышениям приводят неграмотно написанные запросы к MySQL или непроиндексированные таблицы БД. Чтобы понять, какие именно запросы стоит оптимизировать, вы можете воспользоваться логом медленных запросов к MySQL: он содержит только самые проблемные SQL-запросы.
Для снижения нагрузки вы можете:
Установить в движок кэширующие компоненты, которые могли бы сократить число SQL-запросов, или включить соответствующие настройки.
При повторяющихся операциях запросы к БД не будут выполняться каждый раз, данные будут браться из кэша.
Оптимизировать SQL-запросы.
Если движок сайта не менялся, но нагрузка постепенно растёт, то причиной нагрузки может стать увеличение количества данных в таблицах и неоптимизированные запросы к таким таблицам: с ростом количества данных при выполнении запросов анализируется все большее число строк, создаются временные таблицы все больших размеров.
Если в логе медленных запросов фиксируются запросы вида SELECT COUNT(*), стоит постараться от них избавиться. Такие запросы крайне неоптимально работают с большими объемами данных.
Проиндексировать таблицы БД по столбцам, которые используются в выборках.
Если поля таблицы не проиндексированы, то при выборке по ним таблица считывается полностью, что и создает нагрузку.
Отключить компонент или плагин к CMS, который создаёт проблемный запрос.
Зачастую оказывается, что значительная нагрузка создается компонентами, использование которых не обязательно.