2015-10-23 13 views
6

Ho bisogno di importare in un database un file CSV con 20 milioni di righe e 2 colonne, ma quando provo a farlo con il wizard di importazione dati di mysql workbench è estremamente lento, probabilmente è ci vorranno 1 mese per finire, guardando la barra di avanzamento. Ci deve essere un modo più veloce per farlo, spero. Grazie milleWizard di importazione di dati della tabella di lavoro MySQL estremamente lento

+0

Ho scritto [Questa risposta] (http://stackoverflow.com/a/32702768) per un amico. Ha portato la sua importazione di 8 ore giù ad un minuto o così. Sembra estremo, ma è quello che ha detto. – Drew

risposta

9

Utilizzare sempre Load Data Infile come primo tentativo per enormi serie di dati.

Mysql Pagina manuale su Load Data Infile.

Riportato diverse risposte per questa domanda, ma per un confronto tra pari, vedere la domanda di questo ragazzo e il mio Answer e il suo confronto di tempo tra Workbench e Load Data Infile.

+4

Se questo aiuta qualcuno, utilizzo ancora il wizard di importazione sulla prima riga di dati perché ha una procedura guidata decente per costruire la tabella dal CSV. Quindi utilizzare il comando 'Carica dati Infile' per compilare la tabella. È un bel approccio ibrido. È un vero peccato che l'interfaccia utente non funzioni in questo modo sotto il cofano. Come è codificato ora, è piuttosto inutile come importazione di massa. – raider33

+0

Grazie @ raider33 per la condivisione – Drew

3

Questa è un'alternativa. Esegui il dump dei dati CSV nello script sql, è necessario scrivere un codice per questo. In sostanza, i dati CSV vengono convertiti in simile al di sotto comandi
INSERT INTO TABLE_NAME values(1,2),(1,3),....;
ora usano MySQL script di shell e utilizzare SOURCE comando
mysql> sorgente C: scripts/Users/Desktop/SQL/script.sql
i dati verrà importato più velocemente rispetto all'importazione diretta di un CSV per milioni di record.

3

Se non si desidera scrivere codice, suggerisco di provare un altro client GUI libero come HeidiSQL. Importa file CSV/di testo molto più rapidamente di MySQL Workbench.

1

Ho avuto un problema simile con il workbench MySQL. L'alternativa che ho trovato è Toad per MySQL (https://www.toadworld.com/m/freeware/1469)

Avrei impiegato 40 minuti tramite l'amministratore MySQL, collegandomi a un server MySQL remoto. Sul server MySQL stesso il caricamento richiede alcuni minuti. Con rospo sono in grado di connettermi al server remoto e caricare in pochi minuti. Ho provato HeidiSQL, ma non l'ho trovato facile da importare.

Problemi correlati