ERROR 2006 (HY000) at line 4044: MySQL server has gone away

Запустил восстановление дампа через zcat, база около 150 Гб, в сжатом виде 13 Гб. Но спустя время была ошибка с выхлопом, указанная в заголовке. Причина описана на сайте MySQL, коротко если – размер пакетов, в особенности BLOB , слишком большой и из-за этого всё рвётся. В /etc/my.cnf нужно в секции [mysld] выставить значение max_allowed_packet в отличное от дефолтного в большую сторону, а после этого перезагрузить сервис MySQL.

Также это можно сделать в консоли (но после перезагрузки сервиса всё вернется к тому значению, какое указанов конфиге) MySQL без перезагрузки командой:

set global max_allowed_packet=[значение];

При проблемах с BLOB можно установить максимально допустимое значение в 1 Gb, значение также должно быть кратно 1024, если же последнее условие не выполняется, то значение округляется до ближайшего кратного.

Всё вышеописанное относится к серверу. При использовании официальной утилиты командной строки mysql в качестве клиента, можно также изменить значение max_allowed_packet  в разделе [client] файла конфигурации или при выполнении в консоли:

shell> mysql --max_allowed_packet=16M

Ваш комментарий будет первым

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *