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文件的方式就是不行,具体原因还没找到。
最新文章
- JavaWeb开发环境准备之Linux篇
- spring mvc ajax 提交复杂数组类型
- UIButton setImage setBackgoundImage
- plsql配置连接远程数据库
- SDUT2482二叉排序树
- PL/SQL Developer实现双击table表名查询
- JVM-7.Java内存模型与高效并发
- SQL常用增删改查语句
- Jmeter中连接Oracle报错Cannot create PoolableConnectionFactory
- PHP验证码生成及图片处理(GD库)
- Linux 用户切换、修改用户名、修改密码
- 【洛谷P1052【NOIP2005提高T2】】过河
- Ubuntu 14.04 下搭建SVN服务器 (转载自 http://www.linuxidc.com/Linux/2015-01/111956.htm)-------------我所用到是红色字体
- 同一局域网运行两套LVS
- scrapy中自动补全url
- 【转】ajax 跨域 headers JavaScript ajax 跨域请求 +设置headers 实践
- Jaspersoft Studio 导出PDF格式中文不显示
- Android批量打包提速 - 1分钟900个市场不是梦
- OPC Server开发的几大境界
- PHP Token(令牌)设计应用