Edited at

mysql max_allowed_packetを変更する

More than 1 year has passed since last update.


max_allowed_packetの確認方法

まず現状の値を確認します。

mysql> show variables like 'max_allowed_packet';

+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 4194304 |
+--------------------+---------+
1 row in set (0.04 sec)

4194304B

つまり4MBになっていることを確認しました。

これを最大の16MBにします。


max_allowed_packetの値を変更する方法

その前に、

my.cnf というmysqlの設定ファイルに書く必要があるので、

そのファイルの場所を確認します。

$ mysql --help | grep my.cnf

order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf

これらのファイルが存在する場合はそのファイルに。

ない場合は、このパスのどれかに作成。

(私の場合はなかったので以下の場所に作成しました。)

$ touch ~/.my.cnf


my.cnfにmax_allowed_packetの値を設定


my.cnf

[mysqld]

max_allowed_packet=16MB


mysqlを再起動

mysqlを再起動します。

$ mysql.server restart


 変更されているか確認

mysql> show variables like 'max_allowed_packet';

+--------------------+----------+
| Variable_name | Value |
+--------------------+----------+
| max_allowed_packet | 16777216 |
+--------------------+----------+
1 row in set (0.00 sec)

変更されていることを確認しました。