MySQL max_allowed_packet的坑

 更新时间:2024年01月16日 11:01:51   作者:JFS_Study  
max_allowed_packet是 MySQL 中的一个设定参数,用于设定所接受的包的大小,根据情形不同,其缺省值可能是 1M 或者 4M,本文主要介绍了MySQL max_allowed_packet的坑,感兴趣的可以了解一下

一、简述

max_allowed_packet是 MySQL 中的一个设定参数,用于设定所接受的包的大小,根据情形不同,其缺省值可能是 1M 或者 4M。比如是 4M 的情况下,这个值的大小即为:4*1024*1024= 4194304。

当日志中出现了诸如:“Package for query is too large (xxxxxxxx > 4194304). You can change this value on the server by setting the max_allowed_package variable”的提示的时候,错误的本身就清楚的提示了对应的方式。

二、确认 max_allowed_package

使用如下的方式可以确认当前设定值

select @@max_allowed_packet;
show variables like 'max_allowed_packet';

三、修改

可以使用 set 命令来修改,但是只是临时修改,重启后即丢失。也可以直接修改过 mysql 的设定文件并重启 mysql 服务,即可永久化保证设定。
根据 mysql 的安装不同修改的文件也会有所不同,普通安装方式可能会修改my.cnf,这里使用 mysql 的官方镜像,其修改的文件应该为:/etc/mysql/mysql.conf.d/mysqld.cnf

修改内容:向此文件中添加如下设定

max_allowed_packet = 256M

修改前

[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
log-error = /var/log/mysql/error.log
By default we only accept connections from localhost
bind-address = 127.0.0.1
Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

修改后

[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
log-error = /var/log/mysql/error.log
By default we only accept connections from localhost
bind-address = 127.0.0.1
Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_allowed_packet = 256M

重启容器并确认即可。

到此这篇关于MySQL max_allowed_packet的坑的文章就介绍到这了,更多相关mysql max_allowed_packet内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SQL语句实现多表查询

    SQL语句实现多表查询

    这篇文章主要介绍了SQL语句实现多表查询,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参一下下面文章详细内容
    2022-07-07
  • 总结MySQL修改最大连接数的两个方式

    总结MySQL修改最大连接数的两个方式

    最大连接数是可以通过mysql进行修改的,mysql数据库修改最大连接数常用有两种方法,今天我们分析一下这两种方法之间的特点和区别,以便我们能更好的去维护mysql。下面我们来看一下mysql修改最大连接数的方法,希望文章能够帮助到各位朋友。
    2016-08-08
  • Innodb中mysql快速删除2T的大表方法示例

    Innodb中mysql快速删除2T的大表方法示例

    这篇文章主要给大家介绍了关于Innodb中mysql快速删除2T的大表的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • MySQL5.7 JSON类型使用详解

    MySQL5.7 JSON类型使用详解

    MySQL5.7发布后,专门设计了JSON数据类型以及关于这种类型的检索以及其他函数解析。 我们先看看MySQL老版本的JSON存取方式,具体内容详情大家参考下本文吧
    2017-10-10
  • Windows Server 2003 下配置 MySQL 集群(Cluster)教程

    Windows Server 2003 下配置 MySQL 集群(Cluster)教程

    这篇文章主要介绍了Windows Server 2003 下配置 MySQL 集群(Cluster)教程,本文先是讲解了原理知识,然后给出详细配置步骤和操作方法,需要的朋友可以参考下
    2015-06-06
  • Kubernetes中实现 MySQL 读写分离的详细步骤

    Kubernetes中实现 MySQL 读写分离的详细步骤

    Kubernetes中实现MySQL的读写分离通过主从复制架构,利用Kubernetes部署MySQL主节点和从节点,并通过Service实现读写分离,提高数据库性能和可维护性
    2024-11-11
  • MySQL通过ibd文件恢复数据的操作过程

    MySQL通过ibd文件恢复数据的操作过程

    通常,在InnoDB存储引擎下,一个表由三部分组成:数据字典(.frm文件)、表空间(.ibd文件)和日志文件,其中,.frm文件存储了表的定义,.ibd文件存储了表的数据和索引,本文给大家记录一次MySQL通过ibd文件恢复数据的操作过程,需要的朋友可以参考下
    2024-10-10
  • 获取缺失主键表信息的MYSQL语句

    获取缺失主键表信息的MYSQL语句

    如何获取缺失主键表信息,想必有些朋友还是不会的吧,下面为大家介绍下,可以通过几条语句实现,感兴趣的朋友可以了解下
    2013-06-06
  • Linux系统下修改mysql字符集为UTF8步骤

    Linux系统下修改mysql字符集为UTF8步骤

    大家好,本篇文章主要分享的是Linux系统下修改mysql字符集为UTF8步骤,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下吧,方便下次浏览
    2021-12-12
  • SQL查询至少连续七天下单的用户

    SQL查询至少连续七天下单的用户

    这篇文章介绍了SQL查询至少连续七天下单用户的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01

最新评论