メモ、速いらしいということで。
CREATE TABLE testdata ( id int NOT NULL, email varchar(255) NOT NULL, username varchar(255) NOT NULL, value1 varchar(100), value2 int NOT NULL, value3 int NOT NULL, value4 int NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB;
スキーマこれで、
| 1 | test1@example.com | user1 | | 1 | 1 | 1 | | 2 | test2@example.com | user2 | | 2 | 2 | 2 |
こんな感じのデータで400MBぐらいのCSVファイルを取り込み、
mysql> load data infile 'C:\\Users\\okano\\test.csv' into table testdata fields terminated by ','; Query OK, 6000000 rows affected (2 min 45.26 sec) Records: 6000000 Deleted: 0 Skipped: 0 Warnings: 0
Pentium4 3.4GHz, メモリ 2GB, WindowsVista MySQL5.1.48
追記
- PKはインデックス作られるので外しとくべきとアドバイスもろた