数据库:MySQL参数Max_Allowed_Packet 介绍

  发布时间:2025-11-05 14:43:23   作者:玩站小弟   我要评论
1、参数作用max_allowed_packet参数是指mysql服务器端和客户端在一次传送数据包的过程当中最大允许的数据包大小。如果超过了设置的最大长度,则会数据库保持数据失败。2、问题场景●有时候 。

1、数据参数作用

max_allowed_packet参数是参数指mysql服务器端和客户端在一次传送数据包的过程当中最大允许的数据包大小。如果超过了设置的介绍最大长度,则会数据库保持数据失败。数据

2、参数问题场景

● 有时候业务的介绍需要,可能会存在某些字段数据长度非常大(比如富文本编辑器里面的数据内容),造成插入和更新数据库会被max_allowed_packet 参数限制掉,参数导致数据库操作失败。介绍

● 将本地数据库迁移到远程数据库时运行sql错误。数据错误信息是参数max_allowed_packet

会看到如下的报错信息:

复制Packet for query is too large (20682943>1048576). You can change this value on the server by setting the max_allowed_packet’ variable.1.

这个时候需要设置max_allowed_packet参数的大小,亿华云计算从而满足业务数据的介绍保存,当然设置的数据大小要根据实际的业务需要,并不是参数越大越好,要设置合理的介绍数据长度。

https://www.jb51.net/article/268311.htm

3、查询当前数据库设置的大小

查询当前数据库设置情况,下面两种查询SQL均可以

复制show variables like ‘%max_allowed_packet%’; select @@max_allowed_packet;1.2.

set global max_allowed_packet = 500 * 500 * 1024;

4、如何调整配置

(1)通过修改配置文件,需要重启mysql(推荐)

● Linux 操作系统 修改my.cnf 文件

复制vim /etc/my.cnf [mysqld] max_allowed_packet = 100M1.2.3.

● Windows 5.7解压版一般都是修改 my.ini 文件

复制[mysqld] max_allowed_packet = 128M1.2.

(2)命令行方式(不推荐)

复制mysql> set global max_allowed_packet = 100 * 1024 * 1024; mysql> exit [root@localhost opt]# [root@localhost opt]# mysql -uroot mysql> mysql> select @@max_allowed_packet; +----------------------+ | @@max_allowed_packet | +----------------------+ | 104857600 | +----------------------+ 1 row in set (0.00 sec) mysql>1.2.3.4.5.6.7.8.9.10.11.12.13.14.

注意:

● 通过命令行方式修改时,不能用M、G,只能这算成字节数设置。云南idc服务商使用配置文件修改才允许设置M、G单位。

● 命令行修改之后,需要退出当前回话(关闭当前mysql server链接),然后重新登录才能查看修改后的值。通过命令行修改只能临时生效,如果下次数据库重启后对应的配置就会又复原了,因为重启的时候加载的是配置文件里面的配置项。

● max_allowed_packet 最大值是1G(1073741824),如果设置超过1G,查看最终生效结果也只有1G。

WordPress模板
  • Tag:

相关文章

最新评论