Mysql You can change this value on the server by setting the max_allowed_packet' variable. 异常

MySQL根据配置文件会限制server接受的数据包大小。

有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败。

查看目前配置, Windows 系统 配置文件为 my.ini, max 系统 配置文件为 my.cnf

此处使用本地数据库操作:

  cmd 进入mysql bin 目录 --》

  登录本地 --》

  mysql -u root -p --》

  登录密码 --》

  show VARIABLES like ‘%max_allowed_packet%‘;

  显示的结果为:

  +----------------------------+------------+

  | Variable_name             | Value |

  +----------------------------+-----------+

  | max_allowed_packet     | 1048576|

  +----------------------------+-----------+

  以上说明目前的配置是:1M

  修改方法

  1) 方法1

可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

max_allowed_packet = 20M

如果找不到my.cnf可以通过

mysql --help | grep my.cnf

去寻找my.cnf文件。

2) 方法2

(很妥协,很纠结的办法)

进入mysql server

在mysql 命令行中运行

set global max_allowed_packet = 2*1024*1024*10

然后关闭掉这此mysql server链接,再进入。

show VARIABLES like ‘%max_allowed_packet%‘;

查看下max_allowed_packet是否编辑成功

经验总结:

在很多台机器上用方法一都没问题,但2011年11月14日遇到一台机器死活都不成功,

使用命令行方式:set global max_allowed_packet = 16M;

也不行,但使用

set global max_allowed_packet = 2*1024*1024*10;
成功了,很是郁闷

问题终于找出来了,不是方法的问题,是设置完成后要把命令行退出重新登录查看,看来系统变量的值在登录后会缓存。但在这台机器上使用配置INI文件的方式就是不行,具体原因还没找到。

  

Mysql You can change this value on the server by setting the max_allowed_packet' variable. 异常

时间: 2024-08-03 22:09:45

Mysql You can change this value on the server by setting the max_allowed_packet' variable. 异常的相关文章

MySQL5中大数据错误:Packet for query is too large (****** > ******). You can change this value on the server by setting the max_allowed_packet' variable.;

使用的MySQL数据库版本:5.5 插入或更新字段有大数据时(大于1M),会出现如下错误: ### Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1132484 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable. ; SQL []; Packet fo

Packet for query is too large (1660 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.

原因是mysql 默认允许的 数据报包 是 1M  设置大一些就可以了 centos 下面  /ect/my.cnf 文件里面 加入或者修改 下面的参数 [mysqld] max_allowed_packet=20M 这个可以查询 允许的最大数据报包 SHOW VARIABLES LIKE '%max_allowed_packet%'; Packet for query is too large (1660 > 1024). You can change this value on the se

java运行jdk连接mysql出现了:Establishing SSL connection without server's identity verification is not recommended

注意:出现这类提示也不会影响对数据库的增删改查操作,所以不用紧张.. 在运行练习时出现下面的错误信息提示: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if

MySql安装过程中遇到的问题(Windows7 ) apply security setting 报错1364

1.这两天安装MySql遇到了安装到最后一步 apply security setting的时候出现1364的错误 2.首先问题分析 我是二次安装mysql,一定要记着你在二次安装的时候讲之前的安装的mysql的文件全部清除 3.清除Mysql第一次安装的残余物品 删除注册表数据,通过regedit,删除以下几个文件:        3.1  HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Applications/MySQL 

SpringBoot连接Mysql数据库警告:Establishing SSL connection without server's identity verification is not recommend

Java使用mysql-jdbc连接MySQL出现如下警告: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't s

MySQL错误: could not retrieve transation read-only status server

问题描述: java代码在开始事务后,先做了一个查询,再insert,此时会报: java.sql.SQLException: could not retrieve transation read-only status server 解决过程: 查看mysql的事物隔离级别 SHOW VARIABLES LIKE '%iso%'; 返回结果: REPEATABLE-READ 把这个改成:READ-COMMITTED 就好了: SET GLOBAL tx_isolation='READ-COMM

mysql数据库数据能不能导入到sql server中

当然可以了. 一.为 MySQL安装ODBC驱动 下载MySQL ODBC Connector,下载:http://dev.mysql.com/downloads/connector 从控制面板-管理工具,打开你的 数据源(ODBC),选 系统DNS ,点添加.   在 创建新数据源对话框中,选择MySQL ODBC 5.1 Driver ,点完成. 完成后会出现MySQL 链接对话框,添加你的 MySQL 数据库账号信息,并确认"root"账号是否有全部的权限,如果你安装MySQL

mysql报错Packet for query is too large (12238 > 1024). You can change this value

今天将项目部署到linux服务器的时候莫名其妙的报一些错误,可是在本地啥错没有,通过实时查看tomcat 的日志之后发现报错是: 实时查看日志: 1.先切换到:cd usr/local/tomcat5/logs 2.tail -f catalina.out 3.这样运行时就可以实时查看运行日志了 发现错误: rg.springframework.dao.TransientDataAccessResourceException: ### Error querying database. Cause

com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1169 > 1024)

### Cause: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (1169 > 1024). You can change this value on the server by setting the max_allowed_packet' variable. ; SQL []; Packet for query is too large (1169 > 1024). You can change