1

У меня есть дамп базы данных объемом 2 ГБ, который я пытаюсь импортировать в MySQL. Когда я запускаю импорт, я получаю следующее:

> mysql -u myUser -p < dbDump.sql
Warning: option 'max_allowed_packet': unsigned value 104856551424 adjusted to 2147483648
Error 2006 (HY000) at line 2835: MySQL server has gone away

Мой max_allowed_packet в настоящее время настроен на

max_allowed_packet=99999M

Я погуглил эту проблему, и некоторые пользователи сообщили, что эта проблема исправлена путем изменения значения wait_timeout. Проблема в том, что мой дамп истекает менее чем за 5 секунд, поэтому я не думаю, что wait_timeout является проблемой.

Любые другие идеи о том, почему мой дамп не работает?

[РАЗРЕШЕНО]: По предложению stolsvik я проверил файл дампа на содержание строки 2835. Я обнаружил, если содержит команду set global max_allowed_packet = 200, которая аннулирует большее значение, которое я установил ранее. Я удалил поврежденную строку, и теперь дамп успешно завершен.

2 ответа2

1

Подумайте о проверке содержимого файла дампа mysql в вашем любимом редакторе. Сосредоточьтесь на строке 2835, поскольку сервер специально упоминает об этом в ошибке.

0

Предупреждение в том, что ваш max_allowed_packet слишком большой. Вы можете попытаться просто установить его прямо на то, к чему он подстраивается, 2147483648, который, по-видимому, составляет 204 МБ. Но действительно ли у вас есть такие большие BLOB-объекты в вашей базе данных?

Ссылка на max_allowed_packet.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .