写点什么

JDBC—往 MySQL 中写入 Blob 数据时,出现错误:com.mysql.jdbc.PacketTooBigException: Packet for query is too large (5724349 > 1048576)

用户头像
打工人!
关注
发布于: 2021 年 03 月 18 日
JDBC—往MySQL中写入Blob数据时,出现错误:com.mysql.jdbc.PacketTooBigException: Packet for query is too large (5724349 > 1048576)

本文适配的 Mysql 版本为:5.5.36.0,Blob 字段的数据类型:mediumblob(允许数据最大为 16M)当往 Mysql 数据库中写入 Blob 类型的数据时,报错信息如下:

com.mysql.jdbc.PacketTooBigException: Packet for query is too large (5724349 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.
复制代码

上述错误信息的意思是:欲写入的数据大小为 5724349 个字节,虽然小

于 16M,但是是大于 Packet 的 1048576 字节。


解决方案:

报错信息后半句也提示了:setting the max_allowed_packet' variable.找到 MySQL 安装目录(一般在 C 盘)下的 my.ini 文件,并打开文件,如图:

直接把 “max_allowed_packet=16M”粘贴到最下方即可。

设置完成后,重新启动 MySQL 就可以了。


可能遇到的问题:

如果 MySQL 安装在 C 盘,在保存 my.ini 文件时,会出现权限不够,无法保存的问题:

解决方案:

1.打开 my.ini 属性

2.找到“安全”

3.找到如下图,点击编辑:

4.组或用户名下选择 Users,并更改权限,把写入权限勾选上,然后点击应用。如下图:


发布于: 2021 年 03 月 18 日阅读数: 13
用户头像

打工人!

关注

还未添加个人签名 2019.11.10 加入

嗨,欢迎来到我的简介部分!本人打工人一枚,自动化和控制专业入坑人一枚。目前在研究深度强化学习(DRL)技术,菜狗一枚。准备入坑互联网小白一枚。喜欢了解科技前沿技术,喜欢拍照。同时也是A股的韭菜一枚。

评论

发布
暂无评论
JDBC—往MySQL中写入Blob数据时,出现错误:com.mysql.jdbc.PacketTooBigException: Packet for query is too large (5724349 > 1048576)