Ошибка 2006 или server has gone away
Эта статья может быть полезна тем, кто импортирует базы данных больших размеров на Denwer (либо на свой выделенный сервер). Допустим, размер Вашей базы 50 МБ. Просто через вставку запроса в phpMyAdmin в разделе "SQL" ничего не выйдет - браузер просто повиснет. Поэтому единственный выход - использовать импорт SQL-файла. Но тут Вас будет поджидать ошибка #2006 или server has gone away. Вот о решении этой проблемы я и расскажу в этой небольшой статье.
Самое первое, что Вы должны сделать - это настроить PHP для загрузки файлов больших размеров. Без этого по умолчанию Вы вообще не сможете загружать файлы размером, например, 50 МБ.
Дальше необходимо зайти в настройку MySQL (на Denwer это "usr\local\mysql-5.5\my.ini") и там поменять значение параметра "max_allowed_packet" на, например, 100M, что соответствует 100 МБ:
max_allowed_packet = 100M
После всего этого перезапустите MySQL (либо Denwer), и больше ошибки 2006 или server has gone away возникать не будет. Если, конечно, Вы не захотите импортировать базу данных размером 150 МБ, тогда придётся снова увеличивать необходимые параметры в настройках PHP и MySQL.
-
- Михаил Русаков
Комментарии (4):
Очень познавательная статья! Рекомендую новичкам.
Ответить
На денвере можно иvпортить через Mysql.exe, в командной строке
Ответить
Михаил, спасибо! Помогло :)
Ответить
Михаил если 3 гб? там все же выводится такая ошибка (( указал =3072М и перезагрузил денвер
Ответить
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.