mysql max_allowed_packet 参数 限制接受的数据包大小
MySQL根据配置文件会限制Server接受的数据包大小。有时候大的插入和更新会受 max_allowed_packet 参数限制,导致大数据写入或者更新失败。
查看目前配置:
mysql> show VARIABLES like 'max_allowed_packet';
+--------------------+------------+
| Variable_name | Value |
+--------------------+------------+
| max_allowed_packet | 1073741824 |
+--------------------+------------+
1 row in set
max_allowed_packet的单位为字节:
-- 转化为Mb,就是1024Mb
mysql> select 1073741824/1024/1024;
+----------------------+
| 1073741824/1024/1024 |
+----------------------+
| 1024.00000000 |
+----------------------+
1 row in set
修改方法1-配置文件修改
可以编辑my.cnf
,在[mysqld]
段或者mysql的server
配置段进行修改。
max_allowed_packet = 20M
修改my.cnf,配置要重载才能生效
修改方法2-命令修改
参数生效范围为global,不是session. 如果服务器重启设置会失效
set global max_allowed_packet = 2*1024*1024*10
查询时使用的是show variables的话,发现设置好像并没有生效,这是因为show variables等同于show session variables
,查询的是会话变量,只有使用show global variables
,查询的才是全局变量。
示例:
- 查询 max_allowed_packet = 1073741824
mysql> show VARIABLES like 'max_allowed_packet';
+--------------------+------------+
| Variable_name | Value |
+--------------------+------------+
| max_allowed_packet | 1073741824 |
+--------------------+------------+
1 row in set
- 设置 max_allowed_packet = 1048576
mysql> set global max_allowed_packet = 1*1024*1024;
Query OK, 0 rows affected
- 查询结果没变
mysql> show VARIABLES like 'max_allowed_packet';
+--------------------+------------+
| Variable_name | Value |
+--------------------+------------+
| max_allowed_packet | 1073741824 |
+--------------------+------------+
1 row in set
- 全局查看
mysql> show global VARIABLES like 'max_allowed_packet';
+--------------------+---------+
| Variable_name | Value |
+--------------------+---------+
| max_allowed_packet | 1048576 |
+--------------------+---------+
1 row in set
max_allowed_packet
值设置过小将导致单个记录超过限制后写入数据库失败,且后续记录写入也将失败,为了数据完整性,需要考虑到事务因素。
mysql max_allowed_packet 参数 限制接受的数据包大小相关推荐
- MySQL报错 Packet for query is too large,server向mysql发送的数据包大小超过mysql限制
mysql错误提示 Packet for query is too large (3718 > 1024). You can change this value on the server by ...
- 【转】TCP、UDP数据包大小的限制
[转]TCP.UDP数据包大小的限制 来自:https://blog.csdn.net/caoshangpa/article/details/51530685 1.概述 首先要看TCP/IP协议,涉及 ...
- 无线传输的数据速率大小,数据包大小,带宽,网络负载,吞吐量之间的关系
吞吐量:是指当前流量值,当前流量值由当前网络数据包大小和当前数据包个数决定. 网络带宽:由网卡速率,全双工半双工决定,也就是人们熟知的百兆带宽,千兆带宽. 网络负载:以百分比计算,实际上也就是当前吞吐 ...
- ping指定数据包大小
ping指定数据包大小 linux下ping包的默认大小为64Byte,次数不限.但有时我们需要尝试ping大数据包,来测试网络的状况,这时,就要指定ping包的大小了. Linux下ping大数据包 ...
- 如何用命令ping计算机型号,怎么修改cmd中ping命令的数据包大小?
通过ping命令的l参数可以设置数据包的大小,具体的使用方法如下: C:\Users\xxx>ping 192.168.1.1 正在 Ping 192.168.1.1 具有 32 字节的数据: ...
- SOCKET通信中TCP数据包大小的确定
MSS(maximun segment size) 最大分段大小,TCP有一个最大分段大小,用于通告对端每个分段中能发送的最大TCP数据量.MSS的目的是告诉对端其重组缓冲区大小的实际 ...
- 一个数据包大小是多少k_算法交流: 6046 数据包的调度机制 【2.6基本算法之动态规划】...
[题目描述] 6046 数据包的调度机制 By OIer14wa随着 Internet的迅猛发展,多媒体技术和电子商务应用日益广泛,Internet上的服务质量 (QoS,Qualityof Serv ...
- dubbo默认数据包大小修改
dubbo报错 cause: Data length too large: 26304917, max payload: 8388608, channel: NettyChannel 因为dubbo每 ...
- TCP,UDP发送数据包大小浅析
MTU最大传输单元,这个最大传输单元实际上和链路层协议有着密切的关系,EthernetII帧的结构DMAC+SMAC+Type+Data+CRC由于以太网传输电气方面的限制,每个以太网帧都有最小的大小 ...
最新文章
- nginx介绍及常用功能
- linux tree命令源码,[转帖]linux tree命令--显示目录的树形结构
- axure form列表_常见的列表页如何用Axure画出来
- Qt工作笔记-三种方式解决Qt5中文编码问题
- eclipse clean和build作用
- python的repl模式_如何更改sublimeREPL默认python版本
- 【word基础知识】如何将论文中的引文标签和参考文献编号自动关联
- CenOS7.4内核升级修复系统漏洞
- Spyder突然提示打开kernel时发生错误
- 加油站收银系统 Java_加油站也能用收银系统吗?
- tomcat的工作原理
- 记录点滴——2019年终总结
- Unity 性能优化 之 非常酷的SRP Batcher!
- 大上显示器,你的护眼利器
- 计算机巧用剪纸做画册教案,大班剪纸教案 老虎
- cookie的工作原理、cookie的重要性
- java画矩形代码_Java以一种方式绘制矩形
- 用户画像 | 标签数据存储之MySQL真实应用
- css特殊边框形状_了解CSS边框角形状
- 利用adb设置安卓http代理
热门文章
- 互联网协议 — IPv4 — CIDR 网络地址表示法
- 用 Flask 来写个轻博客 (6) — (M)VC_models 的关系(one to many)
- 如何实现分享链接到微信朋友圈时显示自定义LOGO以及名称介绍
- 在瑞士最大银行驱动创新
- 大数据实战之环境搭建(七)
- Web常见约定规范(精选)
- Linux中表示“时间”的结构体和相关函数
- C++中this指针的用法.
- 解决DataList控件无缝滚动图片(转)
- 苹果系统下如何粘贴复制?