Назад | Перейти на главную страницу

Установка «max_allowed_packet» - командная строка против конфигурации?

В чем разница между настройкой max_allowed_packet через командную строку MySQL, используя:

set global max_allowed_packet=100000000;

И установите его, отредактировав конфигурацию MySQL my.ini (Win) или my.cnf (Linux) и поместив следующий код в [mysqld]:

max_allowed_packet=100M 
set global max_allowed_packet = 1000000000

Это устанавливает max_allowed_packet это до 1 миллиарда байт или 1 ГБ.

max_allowed_packet=100M 

Это устанавливает его в 104857600 байт или 100 МиБ.


Assuming your extra zero is unintended, the only difference between setting via command line and config is that the config file supports shorthand using JEDEC binary prefixes. Plus, the set global will be lost on server restart.

Еще одно важное отличие заключается в том, что настройка max_allowed_packet переживет перезапуск mysql, если вы установите переменную в my.cnf (или my.ini).

Кроме того, если вы установите эту переменную глобально, имеет смысл установить и переменные сеанса, особенно если это необходимо сеансу.

Ух, я только что прочитал ответ Хободаве. Более четкий ответ. Я ставлю ему +1