Martin: Problem beim Datenimport in MySQL

Hallo!

Ich möchte in eine MySQL-Tabelle eine CSV-Datei importieren, die aus 100.000 Datensätzen besteht. Es ist eigenartig, aber ich kann mit MyPhpAdmin immer nur einen kleinen Teil der Datensätze importieren. zb Gibt MySQL aus, "es wurden 431 Datensätze importiert". Übrigens: es handelt sich um einen Linux-Server mit Apache.

Gibt es Einstellungen die ich ändern kann, damit MySQL auch größere Datenmengen importieren kann???

Die Tabelle besteht aus 6 Spalten.

Weiß jemand Rat???

Liebe Grüße

  1. Hoi,

    Ich möchte in eine MySQL-Tabelle eine CSV-Datei importieren, die
    aus 100.000 Datensätzen besteht. Es ist eigenartig, aber ich kann
    mit MyPhpAdmin immer nur einen kleinen Teil der Datensätze
    importieren. zb Gibt MySQL aus, "es wurden 431 Datensätze
    importiert".

    MySQL oder PHPMyAdmin?

    Gibt es Einstellungen die ich ändern kann, damit MySQL auch größere
    Datenmengen importieren kann???

    MySQL kann auch noch wesentlich groessere Mengen an Daten verarbeiten.
    Das Problem duerfte bei PHPMyAdmin zu suchen sein.

    Weiß jemand Rat???

    mysqlimport benutzen -- fuer naehere Infos bitte die entsprechende
    Manpage und/oder http://mysql.com/doc/m/y/mysqlimport.html zu
    Rate ziehen.

    Gruesse,
     CK

    1. Hallo,

      stimmen die datentypen überein? Eventuell werden ungültige Zeilen weggelassen?

      Odium

    2. Hallo nochmals:

      Ich erhalte folgende Fehlermeldung:

      Connecting to localhost
      Selecting database allgemein
      Loading data from LOCAL file: strassenverzeichnis.csv into strassenverzeichnis
      allgemein.strassenverzeichnis: Records: 110544  Deleted: 0  Skipped: 110544  Warnings: 295921
      Disconnecting from localhost

      In der commandline habe ich folgendes eingegeben:

      mysqlimport --local --user=root --password=newdebian --fields-terminated-by=";" --verbose allgemein strassenverzeichnis.csv

      Die Datentypen sollten schon übereinstimmen, denn es handelt sich um Text, den ich als varchar ablegen möchte. Irgendwie bin ich mit meinem Latein am Ende.

      Lg

      Martin

      Hoi,

      Ich möchte in eine MySQL-Tabelle eine CSV-Datei importieren, die
      aus 100.000 Datensätzen besteht. Es ist eigenartig, aber ich kann
      mit MyPhpAdmin immer nur einen kleinen Teil der Datensätze
      importieren. zb Gibt MySQL aus, "es wurden 431 Datensätze
      importiert".

      MySQL oder PHPMyAdmin?

      Gibt es Einstellungen die ich ändern kann, damit MySQL auch größere
      Datenmengen importieren kann???

      MySQL kann auch noch wesentlich groessere Mengen an Daten verarbeiten.
      Das Problem duerfte bei PHPMyAdmin zu suchen sein.

      Weiß jemand Rat???

      mysqlimport benutzen -- fuer naehere Infos bitte die entsprechende
      Manpage und/oder http://mysql.com/doc/m/y/mysqlimport.html zu
      Rate ziehen.

      Gruesse,
      CK

      1. Hallo,

        Skipped: 110544  Warnings: 295921

        die Warnings wären sehr interessant. Schalte doch mal das Debug Log ein und sachau da rein.

        Gruss

        Marko

        In der commandline habe ich folgendes eingegeben:

        mysqlimport --local --user=root --password=newdebian --fields-terminated-by=";" --verbose allgemein strassenverzeichnis.csv

      2. Hi!

        Problem - die zu importierende Datei muß genau so heißen wie die Tabelle in die Du importieren willst, also 'Tabellenname.csv'! Das heißt bei Dir das Du in die vorhandene MySQL Tabelle 'strassenverzeichnis' importierst.

        mysqlimport -d --fields-terminated-by=';' -u".$user." -p".$pass." -h".$host." ".$db." ".$file

        Dann mußt Du Entpsrechend Du je noch den host angeben, meist -hlocalhost und die Datebank. Außerdem darfst Du keine '=' da rein schreiben, sonder direkt dahinter.

        mysqlimport --local --user=root --password=newdebian --fields-terminated-by=";" --verbose allgemein strassenverzeichnis.csv

        probiers mal so:

        mysqlimport -d --fields-terminated-by=';' -uroot -pnewdebian -hlocalhost hier_der_DB_Name strassenverzeichnis.csv

        Dabei muß die Tabelle 'strassenverzeichnis' in der DB vorhanden sein. Außerdem brauchst Du entsprechende Spalten in der Tabelle und den Import-Daten...
        Außerdem mußt Du dich wenn Du das in dei Kommandozeile eingibst im selben Verzeichnis wie strassenverzeichnis.csv befinden, oder den Serverpfad angeben.

        Viele Grüße
        Andreas

        PS: 'root' ist gar nicht gut ;-)