网站首页 > 开源技术 正文
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.
这个时候需要设置max_allowed_packet参数的大小,从而满足业务数据的保存,当然设置的大小要根据实际的业务需要,并不是越大越好,要设置合理的数据长度。
3、查询当前数据库设置的大小
查询当前数据库设置情况,下面两种查询SQL均可以
show variables like ‘%max_allowed_packet%’;
select @@max_allowed_packet;
set global max_allowed_packet = 500 * 500 * 1024;
4、如何调整配置
4.1 通过修改配置文件,需要重启mysql(推荐)
● Linux 操作系统 修改my.cnf 文件
vim /etc/my.cnf
[mysqld]
max_allowed_packet = 100M
● Windows 5.7解压版一般都是修改 my.ini 文件
[mysqld]
max_allowed_packet = 128M
4.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>
注意:
● 通过命令行方式修改时,不能用M、G,只能这算成字节数设置。使用配置文件修改才允许设置M、G单位。
● 命令行修改之后,需要退出当前回话(关闭当前mysql server链接),然后重新登录才能查看修改后的值。通过命令行修改只能临时生效,如果下次数据库重启后对应的配置就会又复原了,因为重启的时候加载的是配置文件里面的配置项。
● max_allowed_packet 最大值是1G(1073741824),如果设置超过1G,查看最终生效结果也只有1G。
猜你喜欢
- 2025-01-20 各大学诺贝尔奖人数前30排名
- 2025-01-20 墨西哥东北部一处名为圣克鲁斯的教堂10月1日坍塌,导致多人死亡
- 2025-01-20 诺贝尔奖的由来
- 2025-01-20 母亲节早安温暖问候语文案 母亲节快乐祝福语句子感动说说
- 2025-01-20 CISCO-站点到站点的IPSEC-VPN
- 2025-01-20 MySQL-CommunicationsException异常的三个典型场景及解决方法
- 2025-01-20 动态地址分配DHCP,IP地址管理方式及分配原则,一分钟了解下
- 2025-01-20 Packetworx计划在菲律宾部署6000余个物联网站点
- 2025-01-20 mysql mariadb entware 常见错误
- 2025-01-20 总公司与分公司跨区域互连,如何用Cisco Packet Tracer模拟实现呢?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)