为什么超出max_allowed_pa​​cket?是由于hibernate或CP的迁移?

时间:2016-05-27 10:49:05

标签: mysql hibernate jpa c3p0 hikaricp

我们正在使用MySQL 5.1.73并且最近从

更新了Java应用程序
  • hibernate 3 - > 4.3.11
  • 连接池:c3p0 - > hikari
  • JPA 2.0 - > 2.1

使用新版本进行测试会产生错误

> SQL Error: -1, SQLState: 70 Could not send query: max_allowed_packet
> exceeded. wrote 1479490, max_allowed_packet = 1048576

我已经阅读了SO how to increase the max_allowed_packet(确实修复了它),但我的问题是:

以上某项更改是否会导致应用程序与数据库之间出现更大的数据包,或者是否还有其他需要了解的内容?

1 个答案:

答案 0 :(得分:0)

来自here

  

解决

     

将MySQL数据包大小设置为更大的值(256MB)并重新启动MySQL   服务器。 256MB应足够大,以涵盖大多数情况。

     

shell> mysqld --max_allowed_packet=256M

     

或者,你可以这样做   通过编辑MySQL的my.cnf文件,在MySQL服务器的设置上   (通常在Windows操作系统上命名为my.ini)。找到   文件中的[mysqld]部分,并添加/修改以下参数:

[mysqld]

max_allowed_packet = 256M