Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Plik danych ładowania MySQL - akceleracja?

jeśli używasz innodb i ładowania zbiorczego, oto kilka wskazówek:

posortuj plik csv według kolejności kluczy podstawowych w tabeli docelowej:pamiętaj, że innodb używa klastrowych kluczy podstawowych, aby ładował się szybciej, jeśli jest posortowany!

typowy plik danych ładowania, którego używam:

truncate <table>;

set autocommit = 0;

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

commit;

inne optymalizacje, których możesz użyć, aby przyspieszyć wczytywanie:

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

podziel plik csv na mniejsze części

typowe statystyki importu, które zaobserwowałem podczas ładunków masowych:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd krytyczny PHP:wywołanie niezdefiniowanej funkcji mysqli_stmt_get_result()

  2. połącz dwa klucze obce z tej samej tabeli w SQL

  3. Obsługa ograniczenia klucza obcego w Rails

  4. Błąd MySQL Za dużo połączeń

  5. Tabele MyISAM i InnoDB w jednej bazie danych