问题背景:

   首先我的项目运用的时Mysql,在做一个数据更新操作的时候,提示异常:System.Exception:“ExecuteNonQuery:Packets larger than max_allowed_packet are not allowed.”,通过查找了网上的一些方案主要是因为本地数据库运行最大查询的数据包太小的原因,也正是因为这个运行数据更新一直无法成功,导致后面的操作无法进行。

说明:

  一般默认情况下,max_allowed_packet 的包的大小默认时1024*1024(1Mb),你可以首先使用命令:

查询状态:show VARIABLES like '%max_allowed_packet%';

  我查出的结果是:max_allowed_packet:1024   没错这就是问题所在。

解决方法:

使用SQL语句来修改限制(3种推荐方式):

将长度限制设置为32MB:

SET GLOBAL max_allowed_packet=32*1024*1024; 

将长度限制设置为1GB(MySQL服务器中允许的最大值):

SET GLOBAL max_allowed_packet=1024*1024*1024;

直接设置会话SET SESSION:

SET SESSION max_allowed_packet=1024*1024*1024; 

最后使用上面任何一种方式修改好后重启一些数据库,然后在查询数据包的大小是否改变:

show VARIABLES like '%max_allowed_packet%';

Linux通过编辑my.cnf来修改,windows通过编辑my.ini配置

停止MySQL服务器。

根据自己的数据库安装环境进行配置:

windows找到安装mysql的位置,打开my.ini进行配置修改:

max_allowed_packet = 32M

Linux 修改的是:my.cnf

mysql --help | grep my.cnf

去寻找my.cnf文件

linux下该文件在/etc/下

配置文件修改完成后重启数据库!

Packets larger than max_allowed_packet are not allowed(mysql数据查询提示:不允许超过允许的最大数据包)解决方案的更多相关文章

  1. MySQL报错:Packets larger than max_allowed_packet are not allowed 的解决方案

    在导大容量数据特别是CLOB数据时,可能会出现异常:“Packets larger than max_allowed_packet are not allowed”. 这是由于MySQL数据库有一个系 ...

  2. MySQL Packets larger than max_allowed_packet are not allowed

    MySQL的一个系统参数:max_allowed_packet,其默认值为1048576(1M), 查询:show VARIABLES like '%max_allowed_packet%'; 修改此 ...

  3. mysql 报错 Packets larger than max_allowed_packet are not allowed

    登录 mysql, 执行命令 : show variables like '%max_allowed_packet%'  重新设置: set global max_allowed_packet = 1 ...

  4. mysql 批量导入 Packets larger than max_allowed_packet are not allowed

    解决方法  :http://blog.csdn.net/gtosky4u/article/details/8581281

  5. MySQL高级查询与编程笔记 • 【第2章 数据定义和操作】

    全部章节   >>>> 本章目录 2.1 数据定义语言和数据操作语言 2.1.1 设计"优乐网"数据库 2.1.2 数据定义语言 2.1.3 数据操作语言 ...

  6. MySQL报错:Packets larger than max_allowed_packet are not all

    MySQL根据配置文件会限制Server接受的数据包大小.有时候大的插入和更新会受 max_allowed_packet 参数限制,导致写入或者更新失败. 修改方法: 1.修改配置文件my.ini m ...

  7. MySql如何查询JSON字段值的指定key的数据

    实例:SELECT param->'$.pay' as pay_type FROM game.roominfo; 其中:param是roominfo表的一个字段,当中存的是JSON字符串,pay ...

  8. MySQL慢查询日志相关的文件配置和使用。

    MySQL慢查询日志提供了超过指定时间阈值的查询信息,为性能优化提供了主要的参考依据,是一个非常实用的功能,MySQL慢查询日志的开启和配置非常简单,可以指定记录的文件(或者表),超过的时间阈值等就可 ...

  9. MySQL慢查询日志相关的配置和使用。

    MySQL慢查询日志提供了超过指定时间阈值的查询信息,为性能优化提供了主要的参考依据,是一个非常实用的功能,MySQL慢查询日志的开启和配置非常简单,可以指定记录的文件(或者表),超过的时间阈值等就可 ...

随机推荐

  1. 解决Ubuntu系统下的VMware Workstation无法打开虚拟网络编辑器界面的问题

    本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=630 操作环境: Ubuntu 17 VMware 14 pro for Linux 问题描述: 我在Ubuntu ...

  2. 了解mysqlpump工具

    Ⅰ.功能分析 1.1 多线程介绍 mysqlpump是MySQL5.7的官方工具,用于取代mysqldump,其参数与mysqldump基本一样 mysqlpump是多线程备份,但只能到表级别,单表备 ...

  3. 在JavaWeb项目中URL中字符串加密解密方案

    URL由来: 一般来说,URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号.比如,世界上有英文字母的网址 “http://www.abc.com”,但是没有希腊字母的网址“htt ...

  4. Redis系列-远程连接redis

    假设两台redis服务器,ip分别为:192.168.1.101和192.168.1.103,如何在101上通过redis-cli访问103上的redis呢?在远程连接103之前,先讲下redis-c ...

  5. windows7 dos修改mysql root密码

    第一步:打开mysql 安装路径  选择bin文件  同时按下Shift+鼠标右键  点击"在此处打开命令" 第二步:输入mysql -u root -p 按回车键会提示输入密码 ...

  6. Oracle中的instr()函数

    一.instr()函数 1.语法:instr(sourceString,destString,start,appearPosition) sourceString代表源字符串; destString代 ...

  7. delete.go

    package api import (     "net/http"     "fmt"     "io/ioutil"     &quo ...

  8. Guava新增集合类型-Multimap

    Guava新增集合类型-Multimap 在日常的开发工作中,我们有的时候需要构造像Map<K, List<V>>或者Map<K, Set<V>>这样比 ...

  9. 【codeforces 698C】LRU

    题目链接: http://codeforces.com/problemset/problem/698/C 题目大意: n个物品,k个格子,第i个物品每次被选取的概率为$p_{i}$,如果格子里没有该物 ...

  10. BZOJ_4627_[BeiJing2016]回转寿司_离散化+树状数组

    BZOJ_4627_[BeiJing2016]回转寿司_离散化+树状数组 Description 酷爱日料的小Z经常光顾学校东门外的回转寿司店.在这里,一盘盘寿司通过传送带依次呈现在小Z眼前.不同的寿 ...