MySQL workbench Tabelle Daten import-Assistenten extrem langsam
Brauche ich zum importieren einer csv-Datei mit 20 Millionen Zeilen und 2 Spalten in eine Datenbank, aber wenn ich versuche, dies zu tun mit MySQL-Workbench-Daten-import-Assistenten ist es extrem langsam, wahrscheinlich wird noch ein 1 Monat bis zum Ende, mit Blick auf die Fortschrittsanzeige.
Es muss ein schneller Weg, dies zu tun, hoffe ich.
- Ich schrieb Die Antwort für ein fella. Nahm seine 8 hr import hinunter zu einer minute oder so. Scheint extrem, aber das ist das, was er sagte.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie immer
Load Data Infile
als einen ersten Versuch für enorme Datenmengen.Mysql-Handbuch Seite auf Load Data Infile.
Schrieb mehrere Antworten für diese Frage, aber für einen peer-Vergleich finden Sie diesen Kerl Fragen und meine Antwort und seine Zeit Vergleiche von Workbench vs Load Data Infile.
Dies ist eine alternative.
Dump Ihre CSV-Daten in sql-Skript, die Sie brauchen, um zu notieren Sie einige code für diese.
Im Grunde, Sie Ihre csv-Daten konvertiert und in ähnlichen unter-Befehle
INSERT INTO TABLE_NAME values(1,2),(1,3),....;
jetzt verwenden Sie die MySQL-shell-Skript und verwenden Sie
SOURCE
Befehlmysql> Quelle C:/Users/Desktop/sql scripts/script.sql
Ihre Daten importiert werden, die schneller als im Vergleich zum direkten Import einer CSV-Millionen-Rekord.
Wenn Sie nicht wollen, um code zu schreiben, schlage ich vor, Sie versuchen ein anderes freies GUI-client wie HeidiSQL. Import von CSV/text-Dateien sehr viel schneller als MySQL Workbench.
Ich hatte ein ähnliches Problem mit MySQL-workbench.
Die alternative, die ich gefunden ist Toad für MySQL (https://www.toadworld.com/m/freeware/1469)
Es würde mich 40min über MySQL-admin, eine Verbindung zu einem entfernten MySQL-Server. Auf dem MySQL-server selbst der upload dauert ein paar Minuten. Mit Kröte ich bin in der Lage, eine Verbindung zu dem remote-server und das hochladen in wenigen Minuten. Ich habe versucht, HeidiSQL, aber finden es nicht so freundlich zu importieren.
Immer lieber load data infile zum importieren von datasets, die unbequem ist => Sie haben eine Tabelle erstellen, die die Struktur vor dem Import. Import-Assistent ermöglicht Ihnen das erstellen von on-the-fly eine neue Tabelle direkt aus einer csv-oder json.
Ich denke, der Grund dieses slowlyness ist : workbench verwendet python für den import-Assistenten. Sie können sehen, dass in der Protokolldatei des import-Assistenten, wenn ein Fehler Auftritt, ist es python-Konsole an.
Wenn Sie nicht wan ' T, um die Struktur zu erstellen, aus irgendwelchen Gründen, können Sie den Prozess starten, wird die Tabelle aus der csv, dann kill den Prozess. Dann löschen Sie alles aus Ihrer Tabelle und load data infile. Es ist eine Art von hässlich "hack", aber es funktionierte für mich.