Mysql异常Packet for query is too large (14040 > 1024)

在使用Sqoop将Hive中的数据导出到MySQL的过程中遇到这样的一个异常,是导出到的数据库的max_allowed_packet设置的过小所致。

通过在数据库中执行命令:

mysql> show variables like ‘max_%packet‘;
+--------------------+-----------+
| Variable_name      | Value     |
+--------------------+-----------+
| max_allowed_packet | 268435456 |
+--------------------+-----------+
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

上面是改变之后的值,但是网上多数是说修改my.cnf的时候,这个值直接加到mysqld下面,设置为20M以上的值即可,但是之前使用的配置中已经很高了,通过观察发现query_cache_limit值为1M试着改动该值之后发现max_allowed_packet这个值也有所改动.

max_allowed_packet参数

这个参数为接收的数据包的大小,该值取较小的值可以捕获数据包的异常,以及防止由于数据包过大而导致内存溢出。

query_cache_limit参数

该参数指定了单次查询缓存大小,不宜过大,如果数据比较多的情况下应该适当的加大该参数值,但是一般小数据量的查询不需要设置太大否则造成内存碎片。

时间: 2024-12-20 01:08:05

Mysql异常Packet for query is too large (14040 > 1024)的相关文章

mysql提示Packet for query is too large (1142 > 1024)解决方案

注:最近mysql一直提示如下错误 Packet for query is too large (1185 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.... 按网上要求,检查max_allowed_packet show VARIABLES like '%max_allowed_packet%'; 修改max_allowed_packet set glo

com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1169 > 1024)

### Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1169 > 1024). You can change this value on the server by setting the max_allowed_packet' variable. ; SQL []; Packet for query is too large (1169 > 1024). You can change

nested exception is com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1044 > 1024

HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.hibernate.exception.GenericJDBCException: could not execute query org.hibernate.exce

mysql报错Packet for query is too large (12238 > 1024). You can change this value

今天将项目部署到linux服务器的时候莫名其妙的报一些错误,可是在本地啥错没有,通过实时查看tomcat 的日志之后发现报错是: 实时查看日志: 1.先切换到:cd usr/local/tomcat5/logs 2.tail -f catalina.out 3.这样运行时就可以实时查看运行日志了 发现错误: rg.springframework.dao.TransientDataAccessResourceException: ### Error querying database. Cause

Packet for query is too large (1660 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.

原因是mysql 默认允许的 数据报包 是 1M  设置大一些就可以了 centos 下面  /ect/my.cnf 文件里面 加入或者修改 下面的参数 [mysqld] max_allowed_packet=20M 这个可以查询 允许的最大数据报包 SHOW VARIABLES LIKE '%max_allowed_packet%'; Packet for query is too large (1660 > 1024). You can change this value on the se

【Mysql操作容量限制问题】Error updating database. Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1082 > 1024)

在做查询数据库操作时,报了以上错误,还有out of memery heap hacp ,原因是mysql的max_allowed_packet设置过小引起的,我一开始设置的是1M,后来改为了20M mysql根据配置文件会限制server接受的数据包大小. 有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败. 查看目前配置 show VARIABLES like '%max_allowed_packet%'; 显示的结果为: +-----------------

Packet for query is too large (1166 > 1024). You can change this value

转载: MySQL max_allowed_packet 设置过小导致记录写入失败 mysql根据配置文件会限制server接受的数据包大小. 有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败. 查看目前配置 show VARIABLES like '%max_allowed_packet%'; 显示的结果为: 修改方法 1.修改配置文件 可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段

Packet for query is too large (12238 > 1024). You can change this value

原文 https://blog.csdn.net/java_mr_zheng/article/details/50469203 mysql max_allowed_packet 设置过小导致记录写入失败 mysql根据配置文件会限制server接受的数据包大小. 有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败. 查看目前配置 show VARIABLES like '%max_allowed_packet%'; 显示的结果为: +----------

Mysql数据中Packet for query is too large错误的解决方法

有时,程序在连接mysql执行操作数据库时,会出现如下类似错误信息: Packet for query is too large (4230 > 1024). You can change this value on the server by setting the max_allowed_packet' variable. 这个错误的大致原因是:向mysql数据库发送查询命令时,默认性况下,一个包的大小是1024,实际一条语句的长度,就大小这个,所以执行语句报错.解决的方式,就是调整mysq