今天在处理一段几十mb的json数据的时候,想直接一条insert语句写入数据库,结果发生了异常,发现原来mysql有单条语句最大字节的设置
抛出的异常是:
Packet for query is too large (25446697 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.
错误提示已经很明显了,需要设置max_allowed_packet参数
因为我从来没设置过,所以5.6.37版本的mysql默认单条语句最大4mb,可以通过show VARIABLES like '%max_allowed_packet%';
查看
修改my.cnf,在[mysqld]下新增:
max_allowed_packet = 16M