sql >> Database teknologi >  >> Database Tools >> phpMyAdmin

Problemer med ydeevnen ved import af PhpMyAdmin-data

Skift din maksimale php-uploadstørrelse.

Ved du, hvor din php.ini-fil er?

Først og fremmest, prøv at sætte denne fil ind i din webrod:

phpinfo.php

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

indeholdende:

<?php

phpinfo();

?>

Naviger derefter til http://www.yoursite.com/phpinfo.php

Se efter "php.ini".

For at uploade store filer skal du bruge max_execution_time, post_max_size, upload_max_filesize

Ved du også, hvor din error.log-fil er? Det ville forhåbentlig give dig et fingerpeg om, hvad der går galt.

EDIT:

Her er den forespørgsel, jeg bruger til filimporten:

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

Hvor $filnavn er det midlertidige filnavn fra den globale php-variabel $_FILES, $tabelnavn er tabellen, der allerede er forberedt til import, og $nl er en variabel for csv-linjeendelser (standard til Windows-linjeslutninger, men jeg har mulighed for at vælge linux-linje slutninger).

Den anden ting er, at tabellen ($table_name) i mit script er forberedt på forhånd ved først at scanne csv'en for at bestemme kolonnetyper. Når den har bestemt passende kolonnetyper, opretter den MySQL-tabellen for at modtage dataene.

Jeg foreslår, at du prøver at oprette MySQL-tabeldefinitionen først for at matche, hvad der er i filen (datatyper, tegnlængder osv.). Prøv derefter ovenstående forespørgsel og se, hvor hurtigt det kører. Jeg ved ikke, hvor stor en faktor MySQL-tabellens definition er på hastighed.

Desuden har jeg ingen indekser defineret i tabellen, før EFTER dataene er indlæst. Indekser sænker dataindlæsningen.




  1. SQL Server Management Studio vil ikke starte - Typebiblioteket blev ikke fundet

  2. phpMyAdmin viser ikke tilføjede kolonner

  3. Hvordan får man den maksimale tidsforskel mellem 2 på hinanden følgende rækker pr. værdi?

  4. Hvordan logger jeg på phpmyadmin på Google Cloud