Go for it!

モーターサイクルと自転車とキャンプの日々。

MySQLに大きなパケットを送るには

大きなデータを詰め込もうとしたらGot a packet bigger than ‘max_allowed_packet’ bytesというエラーで弾かれたのでメモ。

デフォルトでは1MBとなっている。設定されている値はmysql変数(?)から読み取ることが出来る。

mysql> show variables like 'max_allowed_packet';
+--------------------+---------+
| Variable_name      | Value   |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+

my.cnf内のmysqldセクションにmax_allowed_packetを書くと上書きできる。

[mysqld]
max_allowed_packet=16MB

mysqldを再起動した後に設定値を確認してみる。

mysql> show variables like 'max_allowed_packet';
+--------------------+----------+
| Variable_name      | Value    |
+--------------------+----------+
| max_allowed_packet | 16777216 | 
+--------------------+----------+
1 row in set (0.00 sec)

やったね。

[ad#text_wide]