mysql报错:max_allowed_packet
报错信息:
1 | Caused by : com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (7,110,074 > 4,194,304). You can change this value on the server by setting the 'max_allowed_packet' variable. |
问题原因:
查询的query语句超过了长度限制
解决方法:
临时方法,数据库重启后会失效,在mysql控制端执行:set global max_allowed_packet = 1*1024*1024*10; 使用 show VARIABLES like '%max_allowed_packet%'; 查看Value值,默认4M,修改为20M
长期方法:修改mysql配置文件,linux下一般在/etc/my.ini,增加 max_allowed_packet = 20M 然后重启数据库
重点提示:修改后,可能执行程序时还会报错,大概率是因为数据库连接需要重新建立,重启项目或者重新连接数据库即可!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构