次の方法を使用して、挿入を高速化できます。
-
同じクライアントから同時に多くの行を挿入する場合は、複数のVALUESリストを含むINSERTステートメントを使用して、一度に複数の行を挿入します。これは、個別の単一行のINSERTステートメントを使用するよりもかなり高速です(場合によっては何倍も高速です)。空でないテーブルにデータを追加する場合は、bulk_insert_buffer_size変数を調整して、データの挿入をさらに高速化できます。
-
テキストファイルからテーブルをロードする場合は、LOADDATAINFILEを使用します。これは通常、INSERTステートメントを使用するよりも20倍高速です。
-
列にはデフォルト値があるという事実を利用してください。挿入する値がデフォルトと異なる場合にのみ、値を明示的に挿入します。これにより、MySQLが実行する必要のある解析が減り、挿入速度が向上します。
参照: MySQL.com:8.2.4.1INSERTステートメントの最適化