mysql max_allowed_packet查询和修改

一、引言

工作中经常需要导入或者导出较大的sql文件。导出时一般没问题,但在导入到其它Mysql库中,可能会出现
“Packet for query is too large (1706 > 1024). You can change this value on the server by setting the max_allowed_packet' variable. ”或者程序(如python里面executemany)在插入大量数据时出现"MySQL server has gone away"
这些错误都可能是Mysql的mysql max_allowed_packet默认值太小。修改该值一般游两种方式。

二、解决方案

1、sql语句修改

首先登陆mysql查看当前该值的大小。

show variables like '%max_allowed_packate%'

修改其大小为1G

set global max_allowed_packet = 1024*1024*1024

2、my.ini修改

1> 在my.ini文件中添加如下语句。比如:改为1G.如下图所示。修改完成后,需要重启mysql。

my.ini
注意:方式2中max_allowed_packet一定是添加在【mysqld】下才能生效。

三、第三方数据库

假如是百度云这样的数据库,直接登录账号,在网页上界面界面化修改即可。

你可能感兴趣的:(mysql max_allowed_packet查询和修改)