«Сервер MySQL ушел» с Ruby on Rails - PullRequest
38 голосов
/ 19 сентября 2008

После того, как наше приложение Ruby on Rails какое-то время работало, оно начинает выдавать 500 с сообщением «Сервер MySQL исчез» Часто это происходит в одночасье. Он начал это делать недавно, без каких-либо очевидных изменений в конфигурации нашего сервера.

 Mysql::Error: MySQL server has gone away: SELECT * FROM `widgets`

Перезапуск шавок (не сервера MySQL) исправляет это.

Как мы можем это исправить?

Ответы [ 11 ]

0 голосов
/ 22 ноября 2011

У меня была эта проблема в приложении Ruby on Rails 3, использующем гем mysql2. Я скопировал ошибочный запрос и попытался запустить его в MySQL напрямую, и я получил ту же ошибку: «Сервер MySQL пропал».

Запрос был очень, очень большой. Очень большая вставка (+1 МБ). Поле, в которое я пытался вставить, было столбцом TEXT, и его максимальный размер составлял 64 КБ. Вместо того, чтобы выдать ошибку, соединение прервалось.

Я увеличил размер поля и получил то же самое, так что я все еще не уверен, в чем именно заключалась проблема. Дело в том, что это было в базе данных из-за какого-то странного запроса. Во всяком случае!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...