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

Jaki jest najlepszy sposób na okresowe ładowanie danych do tabeli?

Czy rozważałeś użycie mysqlimport? Możesz o tym przeczytać tutaj:http://dev.mysql. com/doc/refman/5.1/en/mysqlimport.html

Prawdopodobnie nie zrobiłbym nic z usuwaniem oryginalnych tabel, ponieważ wtedy musisz odtworzyć wszystkie swoje klucze obce, indeksy, ograniczenia itp., co jest bałaganem i koszmarem konserwacji. Zmiana nazw tabel może również powodować problemy (np. jeśli masz synonimy dla tabel, nie jestem jednak pewien, czy mysql ma synonimy).

To, co chciałbym zrobić, to wyłączyć klucze przed załadowaniem danych.

ALTER TABLE tbl_name DISABLE KEYS 

Innymi słowy, podczas ładowania danych nie chcesz, aby próbowały aktualizować indeksy, ponieważ spowolni to ładowanie. Chcesz, aby indeksy były aktualizowane po zakończeniu ładowania.

Myślę więc, że łącząc mysqlimport z powyższą wskazówką, powinieneś być w stanie uzyskać naprawdę wydajne ładowanie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstaw wsadową instrukcję SQL

  2. „pip install MySQL-python” kończy się niepowodzeniem z „IndexError”

  3. Czy jest to bezpieczna/silna funkcja odkażania danych wejściowych?

  4. Jak zrobić stronicowanie danych JSON w PHP?

  5. WYBIERZ DO AKTUALIZACJI przechowując całą tabelę w MySQL, a nie wiersz po wierszu