Я импортирую дамп MySQL и получаю следующую ошибку.
$ mysql foo < foo.sql
ERROR 1153 (08S01) at line 96: Got a packet bigger than 'max_allowed_packet' bytes
По-видимому, в базе данных есть вложения, что делает их очень большими.
Это на моей локальной машине, Mac с MySQL 5, установленный из пакета MySQL.
Где я могу изменить, max_allowed_packet
чтобы иметь возможность импортировать дамп?
Есть что-нибудь еще, что я должен установить?
Просто запуск mysql --max_allowed_packet=32M …
привел к той же ошибке.
Ответы:
Возможно, вам придется изменить его как для клиента (вы выполняете импорт), так и для демона mysqld, который запускает и принимает импорт.
Для клиента вы можете указать его в командной строке:
Также измените файл my.cnf или my.ini в разделе mysqld и установите:
или вы можете выполнить эти команды в консоли MySQL, подключенной к тому же серверу:
(Используйте очень большое значение для размера пакета.)
источник
max_allowed_packet
100 МБ?Как сказал michaelpryor, вы должны изменить его как для клиента, так и для сервера демона mysqld.
Его решение для командной строки клиента хорошо, но ini-файлы не всегда делают свое дело, в зависимости от конфигурации.
Итак, откройте терминал, введите mysql, чтобы получить приглашение mysql, и выполните следующие команды:
Оставьте приглашение mysql открытым и запустите выполнение SQL командной строки на втором терминале.
источник
Это можно изменить в вашем
my.ini
файле (в Windows, расположенном в \ Program Files \ MySQL \ MySQL Server) в разделе сервера, например:источник
Перепишите my.cnf в Mac OS X при использовании MySQL из дистрибутива пакета mysql.com dmg
По умолчанию my.cnf нигде не найдено.
Вам нужно скопировать один из
/usr/local/mysql/support-files/my*.cnf
к/etc/my.cnf
и рестартmysqld
. (Что вы можете сделать на панели настроек MySQL, если вы установили его.)источник
В etc / my.cnf попробуйте изменить max_allowed _packet и net_buffer_length на
если это не работает, попробуйте изменить на
источник
Исправление состоит в том, чтобы увеличить max_allowed_packet демона MySQL. Вы можете сделать это с работающим демоном, войдя в систему как Super и выполнив следующие команды.
Затем, чтобы импортировать ваш дамп:
источник
На CENTOS 6 /etc/my.cnf в разделе [mysqld] правильный синтаксис:
источник
Используйте
max_allowed_packet
переменную, выдав командуmysql --max_allowed_packet=32M -u root -p database < dump.sql
источник
Немного не связано с вашей проблемой, так что вот для Google.
Если вы не выполняли mysqldump SQL, возможно, ваш SQL сломан.
Я только что получил эту ошибку, случайно обнаружив в своем коде незамкнутый строковый литерал. Небрежные пальцы случаются.
Это фантастическое сообщение об ошибке для бегущей строки, спасибо за это MySQL!
источник
max_allowed_packet
ошибку. Если это поможет в будущем, я вставляю с помощью API пандdf.to_sql(...)
Иногда тип установки:
в my.ini не работает.
Попробуйте определить my.ini следующим образом:
или
Затем перезапустите сервер:
источник
Риск безопасности имеет
max_allowed_packet
более высокое значение, поскольку злоумышленник может отправить пакеты большего размера и привести к сбою системы.Итак, оптимальное значение
max_allowed_packet
для настройки и тестирования.Лучше изменить при необходимости (используя
set global max_allowed_packet = xxx
), чем иметь его как часть my.ini или my.conf .источник
Я работаю в среде общего хостинга, и у меня есть веб-сайт на основе Drupal. Я не могу редактировать
my.ini
файл илиmy.conf
файл тоже.Итак, я удалил все таблицы, которые были связаны,
Cache
и, следовательно, я мог решить эту проблему. Тем не менее, я ищу идеальное решение / способ справиться с этой проблемой.Edit - удаление таблиц создало для меня проблемы, потому что Drupal ожидал, что эти таблицы должны существовать. Поэтому я опустошил содержимое этих таблиц, что решило проблему.
источник
Ошибка:
QUERY:
Максимальное значение:
источник
Установите для max_allowed_packet то же самое (или больше), что и при сбросе с помощью mysqldump. Если вы не можете сделать это, сделайте дамп снова с меньшим значением.
То есть, если вы сбросили его с помощью mysqldump. Если вы использовали какой-то другой инструмент, вы по своему усмотрению.
источник