07 docker实战之修改MySQL的max_allowed_packet值

在导入大量SQL脚本时遇到'Got a packet bigger than 'max_allowed_packet' bytes'错误。原因是max_allowed_packet参数设置过小。通过docker ps和docker exec进入MySQL容器,修改my.cnf配置文件,增大该值至20M,重启MySQL后问题解决。
摘要由CSDN通过智能技术生成

1. 问题描述

研究一个开源项目,需要导入SQL脚本,估计是脚本内容较大(接近1200行SQL代码,有个表是文章内容表,数据量比较大)。

本地导入没问题,导入到服务器的mysql时报错,提示:Got a packet bigger than 'max_allowed_packet' bytes

2. 原因和解决思路

由于max_allowed_packet的值设置过小,这个参数指mysql服务器端和客户端在一次传送数据包的过程当中最大允许的数据包大小。

用如下命令可以查询该参数的值:

show VARIABLES like '%max_allowed_packet%'

结果如下:

连1M都不到,而我的SQL脚本文件就有2.4M左右,所以必须要把这个值调大。

网上有两种解决方案,一种是临时的,我试了不行;还有一种是进入mysql改配置文件,并重启mysql。

3. 过程记录

  • 使用docker ps命令查看当前运行的容器

    • 1
      点赞
    • 8
      收藏
      觉得还不错? 一键收藏
    • 1
      评论
    评论 1
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值