# # # 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 this value on the server by setting the Max_allowed_packet ' variable.; Nested exception is 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.
I'm going to go to the view database:
Show VARIABLES like '%max_allowed_packet% ';
Too small causes an error.
Under Linux, go to the MySQL installation directory:
Go to:
/usr/local/mysql, find my.cnf, add a line
Max_allowed_packet = 20M
To restart MySQL:
Service MySQL Restart
Then in the query:
OK, the above solution!
In the query database operation, reported the above error, as well as out of Memery heap HACP, because the MySQL max_allowed_packet settings too small caused by, I started to set the 1M, then changed to 20M
MySQL restricts the size of packets accepted by the server according to the configuration file.
Sometimes large inserts and updates are limited by the Max_allowed_packet parameter, resulting in failure.
View current configuration
Show VARIABLES like '%max_allowed_packet% ';
The results shown are:
+--------------------+---------+ | variable_name | Value | +--------------------+---------+ | Max_allowed_packet | 1048576 | +--------------------+---------+
The above description is currently configured to: 1M
Modify method
1) Method 1
You can edit the my.cnf to modify (under Windows My.ini) and modify it in the [Mysqld] section or in the MySQL server configuration section.
Max_allowed_packet = 20M
If you can't find the MY.CNF, you can pass
MySQL--help | grep my.cnf
To find the my.cnf file.
2) Method 2
(very compromise, very tangled approach)
Go to MySQL server
Run in the MySQL command line
Set Global Max_allowed_packet = 2*1024*1024*10
Then shut down this MySQL server link and then enter.
Show VARIABLES like '%max_allowed_packet% ';
See if the next Max_allowed_packet is edited successfully
Experience Summary:
There are no problems with using methods on many machines, but the November 14, 2011 encounter with a machine is not successful anyway.
Using the command line: Set global max_allowed_packet = 16M;
No, but using
Set global max_allowed_packet = 2*1024*1024*10;
Success, it's depressing.
The problem is finally found, not the problem of the method, is the setup after the command line to exit the login to view, it appears that the value of the system variable is cached after login. However, the configuration INI file is used on this machine.
Reference Documentation:
Http://www.360doc.com/content/11/0214/17/4171006_93014351.shtml
Http://hi.baidu.com/jgs2009/blog/item/2de0701601186202c93d6dfd.html
Http://www.cnblogs.com/phpfans2012/archive/2012/3/2.html
http://blog.csdn.net/wpekin/article/details/5661625
Http://www.360doc.com/content/11/0214/17/4171006_93014351.shtml
Com.mysql.jdbc.PacketTooBigException:Packet for query is too large (1169 > 1024)