sql >> Databasteknik >  >> Database Tools >> phpMyAdmin

PhpMyAdmin-dataimportproblem med prestanda

Ändra din maximala php-uppladdningsstorlek.

Vet du var din php.ini-fil är?

Först av allt, försök att lägga in den här filen i din webbrot:

phpinfo.php

( se http://php.net/manual/en/function.phpinfo.php )

som innehåller:

<?php

phpinfo();

?>

Navigera sedan till http://www.yoursite.com/phpinfo.php

Leta efter "php.ini".

För att ladda upp stora filer behöver du max_execution_time, post_max_size, upload_max_filesize

Vet du också var din error.log-fil finns? Det skulle förhoppningsvis ge dig en ledtråd om vad som går fel.

EDIT:

Här är frågan jag använder för filimporten:

$query = "LOAD DATA LOCAL INFILE '$file_name' INTO TABLE `$table_name` FIELDS TERMINATED BY ',' OPTIONALLY
    ENCLOSED BY '\"' LINES TERMINATED BY '$nl'";

Där $filnamn är det temporära filnamnet från php globala variabeln $_FILES, $tabellnamn är tabellen som redan är förberedd för import, och $nl är en variabel för csv-radändelserna (standard till Windows-radändelser men jag har ett alternativ att välja linux-rad slut).

Den andra saken är att tabellen ($tabellnamn) i mitt skript är förberedd i förväg genom att först skanna csv för att bestämma kolumntyper. När den har bestämt lämpliga kolumntyper, skapar den MySQL-tabellen för att ta emot data.

Jag föreslår att du försöker skapa MySQL-tabelldefinitionen först, för att matcha vad som finns i filen (datatyper, teckenlängder, etc). Prova sedan ovanstående fråga och se hur snabbt det går. Jag vet inte hur mycket av en faktor MySQL-tabelldefinitionen är på hastighet.

Dessutom har jag inga index definierade i tabellen förrän EFTER att data har laddats. Index saktar ner dataladdningen.




  1. phpmyadmin exporterar till csv för excel

  2. ändra standardsorteringen i phpmyadmin

  3. SSMS:När du väljer en sträng i skriptet markerar du samma bokstaver

  4. SQL SERVER MANAGEMENT STUDIO:Markera variabler