Задать вопрос

MySQL server has gone away, куда копать?

Добрый день.

При разработке проекта столкнулся со следующей проблемой: периодически вываливается ошибка MySQL server has gone away.
Как с ней бороться и куда копать?
PHP, MySQL через PDO, Debian

Отваливается периодически на простом запросе UPDATE одной записи в таблице с примерно миллионом записей. То есть иногда апдейт проходит за 1 мс, иногда за 5, а иногда все заканчивается ошибкой.
Если ловить exception и выполнять запрос снова - все проходит, но это какие-то полумеры.
  • Вопрос задан
  • 4757 просмотров
Подписаться 3 Оценить 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 3
fornit1917
@fornit1917
Причины могут быть разные. Когда я с таким сталкивался, мне помогало одно из двух:

1. Если используете пул подключений к бд (в PDO не помню как это называется, кажется персистентное подключение или как-то так...), то попробуйте отключить его

2. В настройках мускла попробуйте увеличить параметр max_allowed_packet

Но если честно, не уверен что это ваш случай, хотя всякое может быть
Ответ написан
Комментировать
@Nc_Soft
У вас не виртуалка от digital ocean случайно?
Ответ написан
service mysql restart
Заходить в phpmyadmin под рутом и отрыть вкладку процессы. Там можно увидеть sql запросы которые тормозят
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы