巨大な BLOB を MySQL データベース (InnoDB) に挿入するにはどうすればよいですか?
LONGBLOB タイプのフィールドは、MySQL のマニュアルに従って、最大 4 GB のデータ サイズをサポートします。しかし、このような膨大なサイズのデータはどのようにしてデータベースに取り込まれるのでしょうか?
使ってみた
INSERT INTO table (bindata) VALUES ( LOAD_FILE('c:/tmp/hugefile') );
hugefile のサイズが約 500 MB より大きい場合、これは失敗します。max_allowed_packet
適切なサイズに設定しました。の値にinnodb_buffer_pool_size
は影響がないようです。
私のサーバー マシンは Windows Server 2003 を実行し、2 GB の RAM を搭載しています。MySQL 5.0.74-enterprise-nt を使用しています。