MySQL ダンプをインポートしていますが、次のエラーが発生します。
$ mysql foo < foo.sql
ERROR 1153 (08S01) at line 96: Got a packet bigger than 'max_allowed_packet' bytes
どうやらデータベースに添付ファイルがあり、挿入サイズが非常に大きくなるようです。
これは、MySQL パッケージから MySQL 5 がインストールされた Mac のローカル マシン上にあります。
max_allowed_packet
ダンプをインポートできるようにするにはどこを変更すればよいですか?
他に設定すべきことはありますか?
実行しただけmysql --max_allowed_packet=32M …
で同じエラーが発生しました。
ベストアンサー1
おそらく、クライアント (インポートを実行するために実行している) と、実行中でインポートを受け入れているデーモン mysqld の両方で変更する必要があります。
クライアントの場合は、コマンドラインで指定できます。
mysql --max_allowed_packet=100M -u root -p database < dump.sql
また、mysqld セクションのmy.cnf または my.ini ファイル (通常は /etc/mysql/ にあります) を変更し、次のように設定します。
max_allowed_packet=100M
または、同じサーバーに接続された MySQL コンソールで次のコマンドを実行することもできます。
set global net_buffer_length=1000000;
set global max_allowed_packet=1000000000;
(パケット サイズには非常に大きな値を使用します。)