INSERT多くのセットを提供するマルチメソッドを使用することVALUESは、それらを個別に行うよりも常に優れています。設定と同じ大きさのステートメントを作成しmax_allowed_packet、理想的にはそれをできるだけ高く調整する必要があります。一般的に 2GB は可能な限り高く、最大速度を得るには、少なくとも 10 ~ 50MB のサイズのチャンクを入れる必要があります。
LOAD DATA INFILEもオプションですが、これは通常、マルチメソッドよりもせいぜい 10 ~ 15% 高速であり、INSERT開始するにはデータが特定の形式である必要があります。CSV またはタブ区切りが最も使いやすく、XML はオプションではありません。
最大限のパフォーマンスを得るには、大量のデータを挿入する前にインデックスを無効にします。これらのトリックのいくつかはmysqldump、空のデータベース スキーマのスナップショットでも見ることができます。
インデックス作成を無効にするには、インポートの前に次のステートメントを実行します。
ALTER TABLE `table_name` DISABLE KEYS;
次に、インポート後、それらを再構築します。
ALTER TABLE `table_name` ENABLE KEYS;