Променете максималния размер за качване на php.
Знаете ли къде е вашият файл php.ini?
Първо, опитайте да поставите този файл във вашия уеб корен:
phpinfo.php
( вижте http://php.net/manual/en/function.phpinfo.php )
съдържащи:
<?php
phpinfo();
?>
След това отидете до http://www.yoursite.com/phpinfo.php
Потърсете "php.ini".
За да качвате големи файлове, имате нужда от max_execution_time, post_max_size, upload_max_filesize
Освен това, знаете ли къде е вашият файл error.log? Надяваме се, че ще ви даде представа какво се случва.
РЕДАКТИРАНЕ:
Ето заявката, която използвам за импортиране на файл:
$query = "LOAD DATA LOCAL INFILE '$file_name' INTO TABLE `$table_name` FIELDS TERMINATED BY ',' OPTIONALLY
ENCLOSED BY '\"' LINES TERMINATED BY '$nl'";
Където $file_name е временното име на файл от глобалната променлива на php $_FILES, $table_name е таблицата, която вече е подготвена за импортиране, а $nl е променлива за края на csv редове (по подразбиране за края на редове на Windows, но имам опция да избера ред в Linux окончания).
Другото нещо е, че таблицата ($table_name) в моя скрипт се подготвя предварително, като първо се сканира csv, за да се определят типовете колони. След като определи подходящи типове колони, той създава MySQL таблицата, за да получи данните.
Предлагам ви да опитате първо да създадете дефиницията на MySQL таблицата, за да съответства на това, което е във файла (типове данни, дължини на знаци и т.н.). След това опитайте горната заявка и вижте колко бързо работи. Не знам до каква степен дефиницията на MySQL таблицата е на скоростта.
Освен това нямам дефинирани индекси в таблицата, докато не се заредят данните. Индексите забавят зареждането на данни.