使用phpMyAdmin导入大型csv文件

时间:2012-07-11 10:05:24

标签: mysql csv import phpmyadmin mysql-error-1064

我有一个csv文件,一个大文件,30 000行。我试图使用LOAD文件等从终端导入它,就像我在谷歌上找到的那样,但它没有用。它正在进行导入,但我的表有30 000行NULL单元格。

之后我尝试了phpMyAdmin,在那里我发现我的csv太大了。我使用CSV Splitter将它拆分为5。我已经为第一个文件导入了。一切都很好。比我试图导入第二个,但我得到了错误:

  

致命错误:允许的内存大小为134217728字节耗尽(尝试过   在C:\ xampp \ phpMyAdmin \ libraries \ import \ csv.php中分配35个字节)   在370行

有时会出现

或1064错误。

你知道为什么以及如何解决它?谢谢。

2 个答案:

答案 0 :(得分:20)

增加你的php的内存限制和脚本时间,这是因为你通过php服务器执行mysql指令。

检查你的php.ini文件中的这个变种:

memory_limit
max_execution_time

但无论如何我会通过mysql客户端(终端)来做,检查mysql doc

LOAD DATA LOCAL INFILE '/path/to/your/csv/file/csv_file.csv' INTO TABLE database_name.table_name FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';

Mysql Documentation - Load Data Infile Syntax PHP Documentation - Ini core settings

答案 1 :(得分:1)

我在尝试使用phpMyAdmin导入大文件时出现此问题,并且我也无法在我使用的版本中使用该命令。为了解决这个问题,我使用this CSV editor并将文件拆分为较小的文件。当我分别导入每个块时工作正常。