文档章节

解决phpmyadmin上传文件大小限制的配置方法

喵王不瞌睡
 喵王不瞌睡
发布于 2014/10/29 12:25
字数 1393
阅读 377
收藏 3

解决phpmyadmin上传文件大小限制的配置方法

 phpmyadmin导入SQL文件时涉及到phpmyadmin上传文件大小限制问题,默认phpmyadmin上传文件大小为2M,如果想要phpmyadmin上传超过2M大文件,就需要修改phpmyadmin上传文件的大小配置或者将大文件分几批上传,相对来说修改phpmyadmin上传文件大小的限制来得方便很多。解决phpmyadmin上传文件大小限制问题涉及修改php.ini配置文件和phpmyadmin配置文件。

  修改phpmyadmin上传文件大小限制主要分修改php.ini配置文件php安装文件内)和phpmyadmin配置文件config.inc.php)两个步骤。

  第一步:修改php.ini配置文件中文件上传大小配置

  此步骤与一般的PHP.INI配置文件上传功能方法一致,需要修改php.ini配置文件中upload_max_filesizepost_max_size两个选项值,具体修改方法请参考: 说到在php.ini中的文件上传的配置,其实在之前介绍PHP文件上传功能代码实例教程以及Jquery AjaxUpload实现文件上传功能代码实例教程时我都有所提及。PHP文件上传功能配置主要涉及php.ini配置文件中的upload_tmp_dirupload_max_filesizepost_max_size等选项。

  php.ini中文件上传功能配置选项说明

  打开php.ini配置文件找到File Uploads

  file_uploads = On

  默认允许HTTP文件上传,此选项不能设置为OFF

  upload_tmp_dir =

  默认为空,此选项在手动配置PHP运行环境时,也容易遗忘,如果不配置这个选项,文件上传功能就无法实现,这个选项设置的是文件上传时存放文件的临时目录,你必须给这个选项赋值,比如upload_tmp_dir =’/leapsoulcn’,代表在C盘目录下有一个leapsoulcn目录,和session配置一样,如果你是在linux环境下,你必须赋予这个目录可写权限。

  如何上传超过8M的大文件?

  上传大文件主要涉及配置upload_max_filesizepost_max_size两个选项。

  php.ini配置文件中的默认文件上传大小为2Mphp初学者容易犯的一个错误是在编写文件上传功能时通过设置上传文件最大大小的表单区域,即允许上传文件的最大值,max_file_size(隐藏值域)的值来规定上传文件的大小,其实一般别人可以绕过这个值,所以安全起见,最好是在php.ini配置文件中配置upload_max_filesize选项,设定文件上传的大小。

  默认upload_max_filesize = 2M,即文件上传的大小为2M,如果你想上传超过8M的文件,比如20M,你必须设定upload_max_filesize = 20M

  但是光设置upload_max_filesize = 20M还是无法实现大文件的上传功能,你必须修改php.ini配置文件中的post_max_size选项,其代表允许POST的数据最大字节长度,默认为8M。如果POST数据超出限制,那么$_POST$_FILES将会为空。要上传大文件,你必须设定该选项值大于upload_max_filesize指令的值,我一般设定upload_max_filesizepost_max_size值相等。另外如果启用了内存限制,那么该值应当小于memory_limit选项的值。

  文件上传的其他注意事项

  在上传大文件时,你会有上传速度慢的感觉,当超过一定的时间,会报脚本执行超过30秒的错误,这是因为在php.ini配置文件中max_execution_time配置选项在作怪,其表示每个脚本最大允许执行时间()0 表示没有限制。你可以适当调整max_execution_time的值,不推荐设定为0

  至此,在php.ini配置文件中对文件上传选项进行配置的PHP教程就介绍完毕了,通过上面的步骤实践与学习,再结合PHP程序,文件上传功能就可以实现了。

  第二步:修改php执行时间及内存限制实现phpmyadmin上传大文件功能

  如果想要phpmyadmin上传大文件,还需修改php.ini配置文件中的max_execution_timephp页面执行最大时间)、max_input_timephp页面接受数据最大时间)、memory_limitphp页面占用的最大内存)三个配置选项,这是因为phpmyadmin上传大文件时,php页面的执行时间、内存占用也势必变得更长更大,其需要php运行环境的配合,光修改上传文件大小限制是不够的。

  第三步:修改phpmyadmin配置文件

  在完成php.ini的相关配置后,还需要修改phpmyadmin配置。

  1、修改phpmyadmin config配置文件中的$cfg['ExecTimeLimit']配置选项,默认值是300,需要修改为0,即没有时间限制。

  2、修改phpmyadmin安装根目录下的import页面中的$memory_limit

1
2
3
4
5
6
7
8
9

$memory_limit = trim(@ini_get('memory_limit'));
// 2 MB as default
if (empty($memory_limit)) {
   
$memory_limit = 2 * 1024 * 1024;
}
// In case no memory limit we work on 10MB chunks
if ($memory_limit == -1) {
   
$memory_limit = 10 * 1024 * 1024;
}

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

  至此,经过修改php.ini配置文件中的文件上传配置选项以及phpmyadmin配置文件后,即可解决phpmyadmin上传文件大小限制问题,从而实现phpmyadmin上传大文件功能。

© 著作权归作者所有

共有 人打赏支持
喵王不瞌睡
粉丝 11
博文 168
码字总数 51104
作品 0
浦东
个人站长
私信 提问
phpMyAdmin修改上传大小限制

在网上找的这些方法我都试过了,怎么就是不能改变上传大小呢?一直默认20M 方案一(简单) 打开phpmyadmin下的配置文件 config.inc.php 查找 给他们赋值 修改后如果提示“配置文件现在需要绝...

FPSTV视频
2016/11/07
426
1
phpmyadmin 无法读取文件

网上百度,竟然都是直接操作Mysql source 我仔细检查了下我的配置,对PHPMYADMIN限制了其访问路径,限定到了自己的目录范围之内(即open base设定) 在其中添加了一个 /tmp 立即解决了问题(...

尐桀
2013/04/17
0
0
PHPMYADMIN导入数据库文件过大的解决方法

在phpmyadmin中显示上传文件最大问8M,可我的单个sql文件超过50M,尝试上传,上传依然可以进行,但上传到8M即操作终止,phpmyadmin提示上传失败。 该问题实际上是php的配置问题,在php.ini中...

zingscript
2014/01/17
0
1
允许phpmyadmin空密码登录的配置方法

今天本地测试phpmyadmin,发现用默认账号:root不能进去,原因就是密码不能为空,诶,无奈之下找解决办法,找了好久,才发现这个,先存起来,以后用,希望对大家也有帮助: 原文摘录如下: ...

陈子傲
2013/03/27
0
0
lnmp下实现部署wordpress和phpmyadmin,并实现https和URL重定向

项目要求: 1.lnmp实现多个虚拟主机,分别部署wordpress和phpmyadmin应用,并设置phpmyadmin仅能通过https协议访问; 2.配置即使客户端通过http协议访问phpmyadmin站点,最终也可以让用户使用...

花火殊途
2018/06/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Redis异常提示: OOM command not allowed when used memory > ‘maxmemory’

异常提示:内存已满,不允许再存数据了,可以通过redis-cli 查看redis的具体信息 127.0.0.1:6379> info memory# Memoryused_memory:168363320used_memory_human:160.56Mused_memory...

开源中国最牛的人
15分钟前
0
0
Cannot use Arrays.copyOf because of class initialization order issues

在看String类的源码时,发现String类里的toCharArray()方法中有一段注释如下: 经多方查找资料后,现解释如下: 虽然String 和Arrays 都属于rt.jar中的类,但是BootstrapClassloader 在加载这...

无语年华
19分钟前
0
0
Git 分布式版本管理系统

Git特点: 每个Git节点都保存完整的文件历史提交记录,可=在不联网的情况下将代码提交到本地仓库,联网的情况下将本地的Patch push到远程仓库,而远程公共仓库只是整个项目的一个公用的备份仓...

ZeroneLove
40分钟前
3
0
免费节假日API 开源了,可以离线调用, 可以集成到自己系统中

免费节假日API 注:原百度节假日API即为本人提供,后百度apistore禁止个人开发者所以才有此独立接口. 鉴于免费版访问量过大对于服务器压力过大现将免费版开源供大家离线调用. 开源的功能为最核...

xiaogg
40分钟前
1
0
手机主宰了你的生活,这不是乔布斯想看到的

简评:当年乔布斯的原话是「今天,苹果将重塑手机」而不是「重塑你的生活」。 智能手机是我们忠实的伴侣。对于我们中的很多人来说,它亮着光的屏幕无处不在,无休止地转移我们的注意力,比如...

极光推送
43分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部