mysql max_allowed_packet设置

前言

最近使用mysql数据库导入数据时报错,根据报错的意思是max_allowed_packet设置的太小了,server会拒绝数据入库,下面说一下怎么设置这个值

查看

首先,使用如下命令可以查看当前配置

1
show VARIABLES like '%max_allowed_packet%';
修改

修改有两种方式,一种不需要重启mysql,但是重启失效,一种是修改my.cnf文件,需要重启mysql,但不会失效

  • 修改my.cnf文件,在[mysqld]下加上

    1
    max_allowed_packet=20M

    保存重启mysql。max_allowed_packet = 20M

  • 在命令行或窗口修改

    1
    set global max_allowed_packet = 2*1024*1024*10
重点

命令行修改虽然不用重启mysql,但需要关闭当前连接,重新连接,否则不生效,所以set后如果不关闭连接直接查询,查询的还是之前的值