sql >> Database >  >> RDS >> Mysql

MySQL-gegevensbestand laden - versnelling?

als je innodb en bulklading gebruikt, volgen hier een paar tips:

sorteer je csv-bestand in de volgorde van de primaire sleutel van de doeltabel:onthoud dat innodb geclusterde primaire sleutels gebruikt, zodat het sneller wordt geladen als het is gesorteerd!

typisch laadgegevensbestand dat ik gebruik:

truncate <table>;

set autocommit = 0;

load data infile <path> into table <table>...

commit;

andere optimalisaties die u kunt gebruiken om de laadtijden te verhogen:

set unique_checks = 0;
set foreign_key_checks = 0;
set sql_log_bin=0;

splits het csv-bestand in kleinere stukken

typische importstatistieken die ik heb waargenomen tijdens bulkladingen:

3.5 - 6.5 million rows imported per min
210 - 400 million rows per hour


  1. Wat is dynamische SQL?

  2. MariaDB JSON_MERGE() uitgelegd

  3. Een MariaDB-cluster implementeren voor hoge beschikbaarheid

  4. Kolom mag niet null zijn Mysql