Exception in thread "main" com.mysql.jdbc.PacketTooBigException: Packet for query is too large (4200044 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2648)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1597)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1708)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1350)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1266)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2648)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1597)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1708)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3249)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1350)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1266)
at com.ddx.zhang.JDBCTest.main(JDBCTest.java:50)
show VARIABLES like '%max_allowed_packet%';
包消息缓冲区初始化为1048576字节
本文详细解析了MySQL连接时遇到的‘PacketTooBigException’错误,解释了其原因在于数据包大小超过了默认的1MB限制,并提供了在服务器端调整此参数的方法。同时,还演示了如何通过查询变量来获取当前设置,并提供了相应的解决步骤。
1万+

被折叠的 条评论
为什么被折叠?



