Mysql2::Error: Got a packet bigger than 'max_allowed_packet' bytes

2013/02/02 14:15 に 森山誠二郎 が投稿
Error while restoring Section4303: Mysql2::Error: Got a packet bigger than 'max_allowed_packet' bytes: IN\
SERT INTO `sections` (`name`, `created_at`, `model_library_id`, `versioned`, `updated_at`, `latest_versio\
n`, `lock_version`, `current_version`, `description`, `commits`) VALUES('core', '2012-11-12 12:34:52', 46\
3, 1, '2012-11-12 12:55:39', NULL, 0, '4c6fc0f7f319831ab2264a3b04a15b31e4932e0d', 'section core\n// \npar\
ameters zzmbn12s_rev=2.52\nparameters zzmbn12s_rev_b=0\nparameters zzmbp12s_rev=2.52\nparameters zzmbp12s\
_rev_b=0\n//\n//

上記のエラーが出たので対策した。max_allowed_packetのサイズのデフォルトが1Mと小さかったのが原因なので
128Mに変更した。CentOS 6の場合、/etc/my.cnfの[mysqld]に以下を記述。
max_allowed_packet = 128M

mysqlを再起動し、mysql -u rootし、show variables like 'max%'; で確認したところ、以下に変更確認できた。
mysql> show variables like 'max%';
+----------------------------+----------------------+
| Variable_name              | Value                |
+----------------------------+----------------------+
| max_allowed_packet         | 134217728            |
Comments