OK. Doporučil bych použít LOAD DATA INFILE výslovně. Pro ty, kteří to nepoužili, to zatím považujte pouze za vybrané prohlášení, dokud to neuvidíte.
Zde je pěkný článek o výkonu a strategiích s názvem Testování nejrychlejšího způsobu importu tabulky do MySQL . Nenechte se vyděsit mysql verzí názvu nebo uvnitř článku. Skok na dno a vyvození některých závěrů:
Jsou tam také jemné body, hlavně v komentářích kolegů tam a zpět o sekundárních indexech (které nemáte). Důležitým bodem pro ostatní je přidat je později.
Doufám, že tyto odkazy jsou užitečné. A vaše data dorazí... za 10 minut (v jiné testovací tabulce pomocí LOAD DATA INFILE
).
Obecné komentáře
Nejpomalejší způsob, jak to udělat, je v programovacím jazyce pomocí smyčky while, řádek po řádku. Zrychlení je určitě dávkové, kde jeden příkaz insert prochází řekněme 200 až 1k řádků najednou. Podstatně vyšší výkon je LOAD DATA INFILE. Nejrychlejší jsou nezpracované soubory (co dělám já, ale nad rámec toho, co zde mluvím).