今天在做一个文件上传时由于上传文件较大导致服务器报错:
查看服务器日志显示:You can change this value on the server by setting the max_allowed_packet' variable.错误。服务器上的数据库是mysql。然后查了一下资料是MySQL的一个系统参数问题:max_allowed_packet,其默认值为1048576(1M),
查询:show VARIABLES like '%max_allowed_packet%';
修改:set global max_allowed_packet = 4*1024*1024*10;
更改后再次查询显示修改成功,但是这种修改方式重启服务器的mysql服务可能会恢复max_allowed_packet =1M的原始值;
或者是直接在配置文件修改此变量的值:MySQL安装目录下的my.ini文件中的[mysqld]段中的"max_allowed_packet = 1M",如更改为10M(或更大,如果没有这行内容,增加一行),保存,重新启动MySQL服务。如果编辑成功就说明修改生效!
注意:如果你使用的是远程数据库建议连接远程数据库再进行相关操作,连接远程数据库的方式:
如:MySQL 连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”
C:/>mysql -h 192.168.5.116 -P 3306 -u root -p123456