2017-08-31 8 views
-1

J'ai récemment rencontré un problème, mysql-connecteur lève une exception, cela signifie que max_allowed_packet = -1, mais quand j'interroge ma base de données, il montre comme suit: max_allowed_packet = 67108864com.mysql.jdbc.PacketTooBigException: le paquet pour la requête est trop volumineux (77> -1)

les détails d'erreur comme suit:

causée par: com.mysql.jdbc.PacketTooBigException: paquet pour la requête est trop grande (77> -1). Vous pouvez modifier cette valeur sur le serveur en définissant la variable 'max_allowed_packet'. au com.mysql.jdbc.MysqlIO. readPacket (MysqlIO.java:612) ~ [mysql-connector-java-5.1.13.jar: na] à com.mysql.jdbc.MysqlIO.getResultSet (MysqlIO.java:415) ~ [mysql connecteur-java-5.1.13.jar: na] à com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate (MysqlIO.java:2581) ~ [mysql-connecteur-java-5.1.13.jar: na] à com .mysql.jdbc.MysqlIO.readAllResults (MysqlIO.java:1757) ~ [mysql-connector-java-5.1.13.jar: na] à com.mysql.jdbc.MysqlIO.sqlQueryDirect (MysqlIO.java:2171) ~ [mysql-connector-java-5.1.13.jar: na] à com.mysql.jdbc.ConnectionImpl.execSQL (ConnectionImpl.java:2568) ~ [mysql-connector-java-5.1.13.jar: na] à com.mysql.jdbc.PreparedStatement.executeInternal (PreparedStatement.java:2113) ~ [mysql-connector-java-5.1.13.jar: na] à com.mysql.jdbc.PreparedStatement.execute (PreparedStatement.java: 1364) ~ [mysql-connector-java-5.1.13.jar: na] à org.apache.ibatis.executor.statement.PreparedStatementHandler.query (PreparedStatementHandler.java:56) ~ [mybatis-3.2.5. jar: 3.2.5] à org.apache.ibatis.executor.statement.RoutingStatementHandler.query (RoutingStatementHandler.java:70) ~ [mybatis-3.2.5.jar: 3.2.5] à org.apache.ibatis .executor.SimpleExecutor.doQuery (SimpleExecutor.java:57) ~ [mybatis-3.2.5.jar: 3.2.5] au org.apache.ibatis.executor.BaseExecutor.queryFromDataba se (BaseExecutor.java:259) ~ [mybatis-3.2.5.jar: 3.2.5] à org.apache.ibatis.executor.BaseExecutor.query (BaseExecutor.java:132) ~ [mybatis-3.2. 5.jar: 3.2.5] à org.apache.ibatis.executor.CachingExecutor.query (CachingExecutor.java:105) ~ [mybatis-3.2.5.jar: 3.2.5] à org.apache.ibatis .executor.CachingExecutor.query (CachingExecutor.java:81) ~ [mybatis-3.2.5.jar: 3.2.5] à sun.reflect.GeneratedMethodAccessor162.invoke (Source inconnue) ~ [na: na] à sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) ~ [na: 1.6.0_43] à l'adresse java.lang.reflect.Method.invoke (Method.java:597) ~ [na: 1.6.0_43] at org.apache.ibatis.plugin.Invocation.proceed (Invocation.java:46) ~ [mybatis-3.2.5.jar: 3.2.5] à com.baidu.bainuo.bppoi.interceptor.MybatisInterceptor.intercept (MybatisInterceptor.java:67) ~ [bp-poi-service-1.0.20-SNAPSHOT.jar: na] à org.apache.ibatis.plugin.Plugin.invoke (Plugin.java:57) ~ [mybatis- 3.2.5.jar: 3.2.5] à com.sun.proxy. $ Proxy34.query (inconnu Source) ~ [na: na] à org.apache.ibatis.session.defaults.DefaultSqlSession.selectList (DefaultSqlSession. java: 104) ~ [mybatis-3.2.5.jar: 3.2.5] à org.apache.ibatis.session.defaults.DefaultSqlSession.selectList (DefaultSqlSession.java:98) ~ [mybatis-3.2.5. pot: 3.2.5] à sun.reflect.GeneratedMethodAccessor161.invoke (Source inconnue) ~ [na: na] à sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) ~ [na: 1.6.0_43] à java. lang.reflect.Method.invoke (Method.java:597) ~ [na: 1.6.0_43] at org.mybatis.spring.SqlSessionTemplate $ SqlSessionInterceptor.invoke (SqlSessionTemplate.java:358) ~ [mybatis-spring- 1.2.2.jar: 1.2.2] ... 54 trames communes omises

+0

augmenter la valeur de max_allowed_packet dans votre URL jdbc vous pouvez donner à la fin – SMA

+0

Lorsque je redémarre le programme, cette erreur n'apparaît pas. Lors de l'examen du code jdbc, je trouve dans ConnectioinPropertiesImpl.java, définissez max_allowed_packet default = -1; mais lors de la création d'une connexion, max_allowed_packet réinitialisera la valeur de la variable max_allowed_packet dans le serveur mysql –

+0

si vous êtes sûr que vous l'avez augmenté, vous devrez alors redémarrer le serveur mysql après cela –

Répondre

0

Envisagez de corriger votre code jdbc en fonction de vos besoins. MySQL 5.6 variables du serveur indique la valeur minimale est 1024.