Altere o tamanho máximo de upload do seu php.
Você sabe onde está o seu arquivo php.ini?
Primeiro de tudo, tente colocar este arquivo em sua raiz da web:
phpinfo.php
(veja http://php.net/manual/en/function.phpinfo.php )
contendo:
<?php
phpinfo();
?>
Em seguida, navegue até http://www.yoursite.com/phpinfo.php
Procure por "php.ini".
Para fazer upload de arquivos grandes, você precisa de max_execution_time, post_max_size, upload_max_filesize
Além disso, você sabe onde está o arquivo error.log? Espero que lhe dê uma pista sobre o que está acontecendo de errado.
EDITAR:
Aqui está a consulta que eu uso para a importação do arquivo:
$query = "LOAD DATA LOCAL INFILE '$file_name' INTO TABLE `$table_name` FIELDS TERMINATED BY ',' OPTIONALLY
ENCLOSED BY '\"' LINES TERMINATED BY '$nl'";
Onde $file_name é o nome do arquivo temporário da variável global php $_FILES, $table_name é a tabela já preparada para importação e $nl é uma variável para os finais de linha csv (padrão para finais de linha do Windows, mas eu tenho uma opção para selecionar a linha linux terminações).
A outra coisa é que a tabela ($table_name) no meu script é preparada com antecedência, primeiro varrendo o csv para determinar os tipos de coluna. Depois de determinar os tipos de coluna apropriados, ele cria a tabela MySQL para receber os dados.
Eu sugiro que você tente criar a definição da tabela MySQL primeiro, para corresponder ao que está no arquivo (tipos de dados, comprimentos de caracteres, etc). Em seguida, tente a consulta acima e veja a rapidez com que ela é executada. Eu não sei o quanto a definição da tabela MySQL está na velocidade.
Além disso, não tenho índices definidos na tabela até DEPOIS que os dados sejam carregados. Os índices retardam o carregamento de dados.