解决phpmyadmin上传文件大小限制的方法(简单,无需繁琐修改配置文件)
关于导入文件大小限制问题的解决

常用source 命令
进入mysql数据库控制台,
如mysql -u root -p(没必要,省略)
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:db.sql
修改upload_max_filesize=200 M 这里修改满足你需要的大小,
可以同时修改其他两项memory_limit=250M post_max_size=200M
这样就可以导入200M以下的.sql文件了。
上文中是把mysql放置在系统路径中,其实不妨也行。例如我的Mysql安装目录为D:\MySQL Server 5.0;
默认情况下:mysql 对导入文件大小有限制的,最大为2M,所以当文件很大时候,直接无法导入,下面就这个
问题的解决列举如下:
1.在php.ini中修改相关参数:
影响mysql导入文件大小的参数有三个:
memory_limit=128M,upload_max_filesize=2M,post_max_size=8M
则首先用cmd打开dos窗口,然后输入D:(没有'\')回车
此时应该会出现D:\>这样的标记,然后在其后面输入D:\MySQL Server 5.0\bin回车(顺序颠倒也行的)
出现D:\MySQL Server 5.0\bin> 接着输入mysqldump -u用户名 -p 数据库名 > 数据库名.sql(也可以输入路
PHP文件上传问题总结——文件大小检测以及大文件上传处理

由于涉及到本地和服务器两方面的安全问题,所以基于input type="file"形式的页面文件上传一直处于一个很尴尬的位置。
一方面,用户不希望隐私泄露,所以浏览器无法对用户在上传时选择的文件做有效的判断。
另一方面,为了服务器端的安全,减轻传输负担,系统又希望能在用户开始上传之前就将非法的文件拒之门外。
一来一去,基于原始input方式的上传,成为网络存储网站避之唯恐不及的遗留性问题,也造就了现在千奇百怪的插件、上传客户端。
input方式的上传就如此之差么?当然不是。
上传文件不大的时候,它还是非常简单可靠的,在PHP中,我们只需要一个复合型表单:<form enctype="multipart/form-data" action="__URL__" method="POST">一个输入框:<input name="userfile" type="file" />和服务器端的一行代码:move_uploaded_file($_FILES['userfile']['tmp_name'],'/var/www/uploads/'. basename($_FILES['userfile']['name']));就可以实现整个上传过程。
但随文件增大,表单上传的不足就会暴露出来。
尤其是我们想取得最基本的文件大小来阻止过大文件上传这一简单的想法,也变得如此困难。
以下一一道来:通过MAX_FILE_SIZEMAX_FILE_SIZE 隐藏字段(单位为字节)必须放在文件输入字段之前,其值为接收文件的最大尺寸。
这是对浏览器的一个建议,PHP 也会检查此项。
在浏览器端可以简单绕过此设置,因此不要指望用此特性来阻挡大文件。
PHPMyadmin 配置文件详解

PHPMyadmin 配置文件详解(配置)注意修改时注意缓存非常适合对数据库操作命令不熟悉的数据库管理者,下面我就说下怎么安装该工具:1.先到网上下载phpmyadmin,再解压到可以访问的web目录下(如果是虚拟空间,可以解压后通过ftp等上传到web目录下),当然您可以修改解压后该文件的名称。
2.配置config文件打开libraries下的config.default.php文件,依次找到下面各项,按照说明配置即可:A.访问网址引用:$cfg['PmaAbsoluteUri'] = '';这里填写phpmyadmin的访问网址B.mysql主机信息引用:$cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address填写localhost或mysql所在服务器的ip地址,如果mysql和该phpmyadmin在同一服务器,则按默认localhost$cfg['Servers'][$i]['port'] = ''; // MySQL port - leave blank for default port mysql端口,如果是默认3306,保留为空即可C.mysql用户名和密码引用:$cfg['Servers'][$i]['user'] = 'root'; // MySQL user 访问phpmyadmin使用的mysql用户名fg['Servers'][$i]['password'] = ''; // MySQL password (only needed对应上述mysql 用户名的密码D.认证方法引用:$cfg['Servers'][$i]['auth_type'] = 'cookie';在此有四种模式可供选择,cookie,http,HTTP,configconfig方式即输入phpmyadmin的访问网址即可直接进入,无需输入用户名和密码,是不安全的,不推荐使用。
解决文件过大,上传失败的问题——大文件分割分片上传

解决⽂件过⼤,上传失败的问题——⼤⽂件分割分⽚上传⼀、背景 平时在移动和客户端有普通的⽂件上传,但这种⽂件⼤多不⼤,从⼏k到⼏⼗兆,平时完全可以满⾜。
但是对于有些终端系统(pc端、移动端),有时候存在⽂件过⼤,如拍摄的⾼清视频,导出上传不了(内存过⼩或响应时间过长)的问题,⽤户体验及不佳。
这⾥上传不了的原因是前端也是需要将⽂件加载到内存后再上传。
但⽂件过⼤,内存过⼩时问题就⿇烦了。
针对这种情景,特提供⽂件分⽚上传的功能。
不仅可以提⾼上传速率,⽽且对普通和⼤⽂件都适⽤。
并且对于⽂件实现断点续传、秒传的功能。
⼆、解决思路 ⾸先,前端制定分⽚的规则。
⽐如对于⼿机移动端,当上传⽂件⼤于10M时,采⽤分⽚的⽅式上传,并切割⼀⽚就上传,不⽤等待每⽚响应的结果。
对于前端,当前端上传⽂件时,前端边加载的时候边分割⽂件,每分割⼀⽚就上传。
如前端加载完5M就直接上传,完成上传动作后释放上传的那块内存。
防⽌占⽤内存的问题,减少了内存占⽤。
⽽分⽚可以采⽤线程、异步的⽅式,缩短了上传的时间,也解决了⽤户等待时间过长的问题。
对于后端,每次上传的⽂件,获取⽂件的md5值,保存md5值⾄数据库中。
对于完整的⽂件md5值,作为⽂件信息存储;对于分⽚⽂件的md5值,保存在分⽚信息中。
当上传⼀个⽂件时,⾸先是根据完整的md5值查找是否有上传的记录,有则说明上传的⽂件有上传的记录,若成功过直接返回url(⽂件秒传);没有成功过,但有上传记录,则有可能之前上传过部分,则需要继续上传未上传的⽂件(断电续传);没有则按照完整的流程上传。
上传完成后,合并分⽚⽂件,更新并保存信息。
但是在开发的过长中,遇到⼏个问题: ①:对于⽂件md5值,前端如何获取到?因为⽂件md5值是通过⽂件中的内容确定的,每个不同的⽂件md5值是不⼀样的,⽽⽂件本⾝不可能加载全量⽂件再获取的。
②:如何判断⽂件是否全部上传完,并是否可以进⾏合并了? ③:上传的某⽚⽂件若出错了,怎么让该⽚⽂件重新上传? ④:合并⽂件时,如何保证合并的顺序? 针对上述问题,在开发的过程都⼀⼀解决了。
修改WampServer 的php上传设置

把上述参数修改后,在网络所允许的正常情况下,就可以上传大体积文件了
方法二,利用.htaccess文件
此法不用直接.修改php.ini,适用于虚拟主机。
配置Apache支持.htaccess
//找到
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
//修改为
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
//就可以了
在目录下新建一个.htaccess文件,windows默认是不允许这么干的,可以在Dreamweaver的文件管理下新建,就不会了。
php_admin_flag name on|off
用于设定布尔值类型的配置指令。不能在 .htaccess 文件中使用。任何在 php_admin_flag 中设定的值不能被 .htaccess 或者 virtualhost 中的指令覆盖。
方法一:修改 php.ini
相关参数解释:
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹。
upload_max_filesize = 2m ;望文生意,即允许上传文件大小的最大值。默认为2M
补充解释:
使用ini_set("post_max_size","80M");的方法是行不通的。
解决MySQL导入数据库文件最大限制2048KB的修改办法

解决MySQL导入数据库文件最大限制2048KB的修改办法引子:今天为论坛进行服务器空间的转移~~~先顺利将Mysql 数据库用phpmyadmin导出~~然后在新服务器上建好数据库后,然后进行导入!可是因为MySQL数据库的.sql文件大于2MB。
所以在导入时就提示说超过2048KB的错误,不让导入….于是就引出了此文的解决办法,呵呵解决办法:1、打开php.ini。
找到 upload_max_filesize 、 memory_limit 、post_max_size 这三个参数!(在默认的情况下,php只允许最大的上传数据为2M,也就是2048KB,而极限的最大使用内存memory_limit也仅为128M,Post 的最大也为2M)2、按您的服务器的实际性能配置进行如下改动:(注意:以下是按我的服务器性能和硬件配置进行的更改..)upload_max_filesize = 8M (上传最大极限设定为8M,这个应该足够一般的文件WEB上传了)memory_limit = 512M (因为服务器的内存为2GB,所以这里加到512M不过份吧,呵)post_max_size = 8M (Post数据最大也设置为8MB,这个跟upload_max一样)3、改完之后,我重新启动系统,再重新执行导入命令后:Import has been successfully finished, 399 queries executed.(显示导入成功,有多少个请求处理成功…)(备注:改完后当你在到phpMyadmin的导入命令行时,虽然(有时候可能会仍然显示为:最大限制:2048KB/Max: 2,048KiB);但实际上你已经可以导入不超过8M的MySQL数据库.sql导出的备份文件了! 另,改完php.ini后,别忘了重启一下web服务或者是服务器哟!重启后升效!)就此记录,希望对遇到同样问题的朋友有所帮助~。
PHP上传文件大小限制

PHP上传⽂件⼤⼩限制修改 php.ini ⽂件⾸先我们要修改php相关的⼀些配置来完成上传⽂件时⼤⼩的限制。
file_uploads = on ;是否允许通过HTTP上传⽂件的开关。
默认为ON即是开upload_max_filesize = 8m ;允许上传⽂件⼤⼩的最⼤值。
默认为2Mpost_max_size = 8m ;通过表单POST给PHP的所能接收的最⼤值,包括表单⾥的所有值。
默认为8M如果 POST 数据尺⼨⼤于post_max_size$_POST和$_FILES superglobals便会为空.⼀般地,在⽹络正常的情况下,设置好上述三个参数后,上传<=8M的⽂件是不成问题。
但如果要上传>8M的⼤体积⽂件,只设置上述三项不⼀定能⾏的通。
max_execution_time = 30 ;每个PHP页⾯运⾏的最⼤时间值(秒),默认30秒。
超过30秒,该脚本就停⽌执⾏,这样就会出现⽆法打开⽹页的情况max_input_time = 60 ;每个PHP页⾯接收数据所需的最⼤时间,默认60秒memory_limit = 8m ;每个PHP页⾯所吃掉的最⼤内存,默认8M修改 nginx.conf ⽂件nginx对上传⽂件⼤⼩是有限制的,解决⽅法是修补nginx相对应的配置⽂件。
client_max_body_size 50m; //⽂件⼤⼩限制,默认1mclient_header_timeout 1m;client_body_timeout 1m;proxy_connect_timeout 60s;proxy_read_timeout 1m;proxy_send_timeout 1m;每个参数的意思:client_max_body_size限制请求体的⼤⼩,若超过所设定的⼤⼩,返回413错误。
client_header_timeout读取请求头的超时时间,若超过所设定的⼤⼩,返回408错误。
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法

这篇文章主要介绍了PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法,造成这个问题的原因是PHP上传大小限制为2MB,修改PHP.ini配置即可解决这问题,需要的朋友可以参考下
网站搬家的时候碰到的这个问题,因为数据一直是使用PhpMyAdmin工具来进行备份和恢复的,但是随着网站的数据越来越多,所以数据库也是越来越大,压缩后都还有4M的数据,而在PhpMyAdmin里将数据导入时就出错误提示了。
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法三联
上图为PhpMyAdmin里的提示“没有接收到要导入的数据。
可能是文件名没有提交,也可能是文件大小超出PHP 限制。
参见FAQ 1.16。
”。
经过网络搜索一番找到了解决方法,原因是PHP默认限制上传文件为2M,而我们只需修改这个默认的限制即可。
操作方法:打开PHP配置文件PHP.ini,搜索“upload_max_filesize”将其默认的2M修改大一点就行了。
如果修改默认值之后还是没有解决问题,请试试下面的操作。
分别搜索memory_limit 和post_max_size 将其值进行修改,当然是修改大一点。
memory_limit解释:设置内存;
post_max_size解释:提交数据最大值
更多信息请查看IT技术专栏。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
解决phpMyAdmin最大限制
phpMyAdmin使用方便,已成为大多数站长的常用工具,对于小型网站来讲phpmyadmin已经绰绰有余了,但是对于中大型网站,在数据库较为庞大的时候,phpmyadmin就显得力不从心了!
一般情况下,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)。
”不用担心,问题解决方案/php/phpmyadmin-blowfish_secret.html
然后在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配置文件中的相
关信息修改这段代码。