Я получаю вышеупомянутую ошибку при резервном копировании с помощью ZRM, который использует mysqldump для резервного копирования.
mysqldump --opt --extended-insert --single-transaction --create-options --default-character-set = utf8 --user = "" -p --all-databases> "/ nfs / backup / mysql01 / dailyrun / 20091216043001 / backup.sql "
mysqldump: ошибка 2020: размер пакета превышает 'max_allowed_packet' байтов при сбросе таблицы TICKET_ATTACHMENT
в ряду: 2286
Я увеличил размер max_allowed_packet до 1 Гб в /etc/my.cnf, который является настройкой сервера, а для настройки на стороне клиента я установил его, выполнив эту команду:
mysql -u -p --max_allowed_packet = 1 ГБ
И я убедился, что на стороне клиента и на стороне сервера они имеют одинаковую ценность.
Это необходимо для проверки значения на стороне клиента в соответствии с этим сообщением на форуме http://forums.mysql.com/read.php?35,75794,261640
mysql> ВЫБРАТЬ @@ MAX_ALLOWED_PACKET ->; + ---------------------- + | @@ MAX_ALLOWED_PACKET | + ---------------------- + | 1073741824 | + ---------------------- + 1 строка в наборе (0.00 сек)
И это проверка настройки значения сервера.
mysql> ПОКАЗАТЬ ПЕРЕМЕННЫЕ
| max_allowed_packet | >
1073741824 |
У меня закончились идеи, и я попытался найти решения в рамках обмена экспертами и поискать в Google, но пока ни один из них не помог.
Ссылка http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html
Кто-нибудь, пожалуйста, посоветуйте, спасибо.
Это ответ от обмена экспертами:
Вам нужно будет увеличить max_allowed_packet в разделе mysqldump в my.cnf, значение по умолчанию - 25M
[mysqldump] max_allowed_packet = 1 ГБ
В качестве альтернативы вы можете вызвать mysqldump с желаемым значением max_allowed_packet.
mysqldump --max_allowed_packet = 1 ГБ
Это не «альтернатива». mysqldump известен тем, что игнорирует это значение в my.cnf, но установка его в качестве параметра командной строки всегда работает.
Используйте команду ниже, чтобы исправить вашу проблему.
# mysqldump --max_allowed_packet=1024M -u root -p database > dumpfile.sql
Это решит вашу проблему
Примечание. Вы можете установить максимальное значение по своему усмотрению. Здесь мы использовали 1024M в качестве примера.
Есть несколько мест, где вам может понадобиться решить эту проблему: в командной строке, в разделе [mysqld] файла my.cnf и в разделе [mysqldump] файла my.cnf. Я просто боролся с этим и, наконец, заставил его работать, установив все это на 2G. У меня есть смутное подозрение, что побеждает самый младший ...