无法将过大的sql文件导入mysql

时间:2013-08-14 10:52:08

标签: php mysql sql command

我有一个28 MB的sql文件需要导入到mysql。 首先,我使用xampp导入,它失败了,所以我将php.ini-development和php.ini-product中的max_file_uploads,post_size(类似的东西)更改为40 MB,但它仍显示“max: 2048kb“并再次导入失败。

从研究开始,我学会了使用mysql.exe导入,所以我打开mysql.exe并输入以下命令行(msdos):

-u root -p dbname < C:\xxx\xxx\sqlfile.sql

但仍然一次又一次失败.....

问题是什么? XAMPP?还是我的SQL设置?

4 个答案:

答案 0 :(得分:2)

试试这个:

mysql -uroot -p --max_allowed_packet=24M dbname

登录数据库后:

source C:\xxx\xxx\sqlfile.sql

我认为您应该可以加载文件

答案 1 :(得分:1)

你的档案有多大?您也可以从控制台执行此操作:

mysql -u##USER## -p ##YOUR_DATABASE## < ##PATH_TO_YOUR_FILE##

在不执行mysql.ext文件的情况下执行此操作:只需“cd”直接进入目录并尝试命令。

它会询问您的密码并立即开始导入。不要忘记创建数据库或删除所有表(如果它已经存在)。

我总是发现这种方法快速,轻松,易于使用php指令,phpmyadmin配置或外部应用程序。它就在那里,内置于mysql核心。

答案 2 :(得分:0)

你应该在MySQL中增加max_allowed_pa​​cket。

只需在导入文件之前执行此命令:

set global max_allowed_packet=1000000000;

答案 3 :(得分:0)

我也提到了类似的问题。所以在此之后我也得出结论,大型sql文件永远不会被导入到mysql中。它总是会给出超时错误。

然后我找到了解决方案。

有一个软件 Heidisql

按照以下步骤操作: -

1) download the software.
2) then install the software
3) create new session in Heidisql and open the session
4) then go to Tools -> Load SQL File -> Browse. 

就是这样。这个解决方案最适合我。

检查链接here