你了解的max_allowed_packet

Error updating database. Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'List'.

该错误为包或任何生成的/中间字符串超过了服务允许的大小。这个问题经常发生在load data file中,有时也发生在update、insert时。该值默认16M,以捕获大的(可能是错误的)数据包。

[Mysql] >show global variables like 'max_allowed_packet';

基本概念:

max_allowed_packet 即最大允许传输包的大小,也就是查询出结果后,把结果发送到客户端时,每个网络包的最大大小。

1、默认为16M(16777216字节),最大为1G (1073741824字节)

2、修改时需要设为1024的整数倍

3、客户端和服务端都有这个参数,最好保持一致

设置依据:此参数要根据业务实际需求设定

1、是否存在大字段(blob、text等),若存在需要适当调大

2、内存大小设置,innodb_buffer_pool是否足够大

影响范围:

设置太大,会使用更多内存,很容易导致丢包,无法捕捉异常大事物包SQL

设置太小,可能会导致程序报错,备份失败,也会导致频繁的收发网络报,影响系统性能

修改:一般32M足够

[Mysql] >set global max_allowed_packet =33554432;

修改配置文件:

[mysqld]

max_allowed_packet=32M

原文发布于微信公众号 - MYSQL轻松学(learnmysql)

原文发表时间:2018-03-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PHP实战技术

浏览器访问一个网站所经历的步骤

  搜索操作系统自身的DNS缓存(浏览器没有找到缓存或缓存已经失效)

2518
来自专栏Vamei实验室

来玩Play框架01 简介

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!

1612
来自专栏编程

Linux命令行:find的26个用法示例

作者 | Wray ? Linux系统中的 find 命令在查找文件时非常有用而且方便。它可以根据不同的条件来查找文件,例如权限、拥有者、修改日期/时间、文件大...

1908
来自专栏云计算教程系列

如何在Ubuntu 14.04上使用Cassandra运行多节点群集数据库

Apache Cassandra是一个高度可扩展的开源数据库系统,在多节点设置上实现了出色的性能。

1432
来自专栏帘卷西风的专栏

Linux常用指令

服务器部署会经常用到linux,很多时候都是用的时候上网查一下指令,然后用完过不了多久就忘记了,因此本文记录一些自己常用的linux指令,以作备忘。并不断添...

2283
来自专栏Golang语言社区

Linux命令行:find的26个用法示例

Linux系统中的 find 命令在查找文件时非常有用而且方便。它可以根据不同的条件来查找文件,例如权限、拥有者、修改日期/时间、文件大小等等。在这篇文章中,我...

36013
来自专栏PHP实战技术

浏览器访问一个网站所经历的步骤

搜索操作系统自身的DNS缓存(浏览器没有找到缓存或缓存已经失效)

2309
来自专栏木可大大

Linux监控指令

说到监控CPU,目前主要是监控CPU的使用率,以及每一个进程占用CPU资源,Linux系统中主要使用 top、vmstat、pstree 三个命令。

1643
来自专栏程序员互动联盟

【专业技术】如何在Linux中添加新的系统调用

系统调用是应用程序和操作系统内核之间的功能接口。其主要目的是使得用户可以使用操作系统提供的有关设备管理、输入/输入系统、文件系统和进程控制、通信以及存储管理等方...

2604
来自专栏智能计算时代

Envoy 架构概览(1):术语,线程模型,监听器和网络(L3 / L4)过滤器和HTTP连接管理

术语 在我们深入到主要的体系结构文档之前,有一些定义。有些定义在行业中有些争议,但是它们是Envoy在整个文档和代码库中如何使用它们的,因此很快就会出现。 主机...

3603

扫码关注云+社区

领取腾讯云代金券