设置MySQL储存文件大小的限制
2024-10-05
49
在servlet上传图片到MySQL数据库过程中,MySQL存储文件大小是有限制的,比如数据库只能存储1M文件的大小,上传的文件就不能超过这个限制,如果超过限制就会报以下的错误信息:
故障现象:数据存储文件的时候报ERROR: Packet for query is too large (1869728 > 1048576). You can change this value on the server by setting the max_allowed_packet’ variable.
以上的问题就是上传文件的大小已经超过数据库限制的大小,导致数据库存储不了文件,所以这个时候我们需要重新设置数据库存储文件的大小:
从报错看是 mysql的 max_allowed_packet参数值设置太少了,用show VARIABLES like ‘%max_allowed_packet%’;查看,显示的是1M(1024x1024),这当然就有问题了,超过1M就存不了
MySQL根据配置文件会限制server接受的数据包大小。有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败,要重新设置参数可以在MySQL命令行中运行:
set global max_allowed_packet = 2x1024x1024x10
然后关闭掉这此MySQL Server链接,再重新连接。再次用show VARIABLES like ‘%max_allowed_packet%’
查看下max_allowed_packet是否编辑成功:
然后再次上传文件到数据库,显然这是成功的
更新于:1个月前赞一波!
相关文章
- 【说站】MySQL的五种索引类型极其特点
- 【说站】php安装mysql扩展模块
- MySQL 5.x和MySQL 8.x数据库的区别
- 宝塔里mysql停止了自动启用脚本
- MySQL如何建数据库
- mysql怎么随机查询数据
- ASP.NET设置允许上传文件大小
- MYSQL 如何删除表中重复数据
- MySQL 中查找重复数据,删除重复数据
- PHP程序员经常碰到的11个MySQL错误
- MySQL server has gone away
- MySQL 事务介绍及使用方法
- MySQL 中 varchar 和 char 区别
- MySQL 事务特性和事务隔离级别
- MySQL 慢查询详解
- MySQL 联合查询 union
- mysql 数据库设计三大范式
- mysql 函数: find_in_set()、instr()
- MySQL 添加数据 insert 命令及优化
- 修改 MySQL 用户密码
文章评论
评论问答