通过第三方接口拉取数据后,解析存储到mysql、es、fastdfs中,但存储到mysql过程中部分数据会报错,错误信息如下:
Packet for query is too large (41649082>1048576).
You can change this value on the server by setting the max_allowed_packet’ variable.
查询资料后,max_allowed_packet指mysql服务器端和客户端在一次传送数据包的过程当中最大允许的数据包大小。也就是不能超过设定的数据包的最大值,否则报错。
解放方案:调整max_allowed_packet参数,按需调整
方法一(永久生效)
修改 my.ini 加上 max_allowed_packet = 67108864
67108864=64M;
修改完成之后要重启mysql服务,如果通过命令行修改就不用重启mysql服务。
方法二(不需要重启mysql)
命令修改,设置为100M
mysql> set global max_allowed_packet = 10010241024;
查看mysql的max_allowed_packet大小,运行
show VARIABLES like ‘%max_allowed_packet%’;