欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

解决phpMyAdmin导入数据文件最大限制2MB问题

程序员文章站 2022-05-14 23:12:56
...
phpMyAdmin是各大站长常用的一个数据导入导出工具了,但它默认只能导入2MB大小的数据了,如果要导入大数据我们需要进行简单的配置,下文一起来看看吧。

phpMyAdmin使用方便,已成为大多数站长的常用工具,对于小型网站来讲phpmyadmin已经绰绰有余了,但是对于中大型网站,在数据库较为庞大的时候,phpmyadmin就显得力不从心了!

当使用 phpMyAdmin 导入的数据库大小大于 2M 的时候,会出现如下提示:

No data was received to import. Either no file name was submitted, or the file size exceeded the maximum size permitted by your PHP configuration. See FAQ 1.16.

一般情况下,phpMyAdmin最大限制上传2M以内的文件,但是当网站运营一段时间后,即使把sql格式的数据库压缩成zip格式,想变成2M以内是不太现实的。

个人并不推荐使用phpMyAdmin来导入大数据库,因为大多数用户使用的是虚拟主机,很多文件没有服务器权限是无法修改的,而且phpmyadmin对大数据库的执行效率也非常低,容易出现错误。

导入大数据库的解决方案

推荐使用 BigDump工具 来进行导入大数据库的操作,下载地址和使用方法见:用BigDump工具导入超大MySQL数据库备份文件

如果你很执着一定要用phpmyadmin来进行数据库导入操作,网络上虽然可以找到很多资料,但大多数都不全,只解决了一部分问题,所以我整理出了相对比较靠谱的方案,

以下是我搜集的一些解决phpMyAdmin上传文件大小限制的方法

方案一(简单)

打开phpmyadmin下的配置文件 config.inc.php,代码如下:

//查找  
$cfg['UploadDir'] = "; 
$cfg['SaveDir'] = "; 
//给他们赋值 
$cfg['UploadDir'] = 'upload'; 
$cfg['SaveDir'] = 'save';

修改后如果提示"配置文件现在需要绝密的短语密码(blowfish_secret),"不用担心,然后在 phpMyAdmin 的目录下创建两个空目录,upload 和 save,并且把要导入的数据库文件(必须是sql格式,非zip格式)传送到 upload 目录下.

登录phpMyAdmin,点导入(import)发现多了一个 网站服务器上传文件夹,选择网站服务器上传的文件夹里的数据库就可以了,然后点击【执行】按钮就可以顺利导入超大型的数据库了.

方案二(繁琐)

打开PHP配置文件 php.ini,查找 upload_max_filesize 和 post_max_size 把他们的值修改的大一点,如果上传的文件很大,还需进行以下修改,代码如下:

max_execution_time(php页面执行最大时间)

max_input_time(php页面接受数据最大时间)

memory_limit(php页面占用的最大内存)

这是因为phpmyadmin上传大文件时,php页面的执行时间、内存占用也势必变得更长更大,其需要php运行环境的配合,光修改上传文件大小限制是不够的.

打开 phpmyadmin 目录下的 config.inc.php 文件,查找 $cfg["ExecTimeLimit"]配置选项,默认值是300,需要修改为0,即没有时间限制.

打开 phpmyadmin 目录下的 import.php 文件,修改 $memory_limit 的值,说明,首选读取php.ini配置文件中的内存配置选项memory_limit,如果为空则默认内存大小限制为2M,如果没有限制则内存大小限制为10M,你可以结合你php.ini配置文件中的相关信息修改这段代码.