`

(转)MySQL max_allowed_packet设置及问题

 
阅读更多

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

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

查看目前配置

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文件的方式就是不行,具体原因还没找到。


REFS:http://blog.csdn.net/loseinworld/article/details/6856261
分享到:
评论

相关推荐

    mysql5.7 修改max_allowed_packet方法

    在MySQL 5.7中,可以通过执行以下SQL命令来查看`max_allowed_packet` 的当前设置: ```sql SHOW VARIABLES LIKE '%max_allowed_packet%'; ``` 该命令将返回一个类似于如下的结果,显示了`max_allowed_packet` 的...

    Mysql的max_allowed_packet设定

    MySQL中的`max_allowed_packet`参数是一个非常重要的设置,它决定了MySQL服务器能够接收的最大数据包大小。这个设置在处理大数据操作,如导入大体积的数据文件、执行包含大量数据的SQL语句时尤其关键。如果某个...

    mysql设置max_allowed_packet_解决_MySQL_Error_2006

    mysql设置max_allowed_packet_解决_MySQL_Error_2006

    如何修改mysql数据库的max_allowed_packet参数

    在MySQL数据库中,`max_allowed_packet` 是一个非常重要的参数,它定义了客户端与服务器之间可以传输的最大数据包大小。这个参数对处理大数据操作,如导入大文件、执行大查询或者传输大对象(如BLOB或TEXT列)时至关...

    MySQL 5.5的max_allowed_packet属性的修改方法

    在MySQL数据库系统中,`max_allowed_packet`是一个非常重要的配置参数,它决定了服务器可以处理的最大数据包大小。这个参数主要用于限制单次传输的数据量,防止因大数据操作导致内存溢出或者网络阻塞。在MySQL 5.5...

    HurleyWong#TechNote#MySQL max_allowed_packet过小引起的问题1

    MySQL max_allowed_packet过小引起的问题报错如下com.mysql.jdbc.PacketTooBigException: Packet

    mysql中max_allowed_packet参数的配置方法(避免大数据写入或者更新失败)

    设置`max_allowed_packet`过小可能会导致以下问题: 1. **大数据插入失败**:当你尝试插入一个超出限制的大记录时,操作会失败。 2. **更新失败**:同样的,如果你的UPDATE语句涉及的数据量过大,也会遇到问题。 3....

    Mysql的longblob字段插入数据问题解决

    在使用mysql的过程中,有个问题就是mysql的... You can change this value on the server by setting the max_allowed_packet’ variable. 原因:myslq默认配置最小的需要更改 :在mysql.ini中配置参数(max_allowed_pa

    mysql.docx

    本篇将详细探讨`max_allowed_packet`参数和`show profiles`功能,以及`wait_timeout`设置对MySQL性能的影响。 `max_allowed_packet`参数用于控制MySQL服务器接收或发送的最大数据包大小。默认情况下,这个值可能...

    MySQL学习-程序选项修改器和使用选项设置程序变量.pdf

    例如,`mysql`客户端有一个名为`max_allowed_packet`的变量,用于控制通信缓冲区的最大大小。要将`max_allowed_packet`变量设置为16MB,可以使用以下命令: - `mysql --max_allowed_packet=16777216` - `mysql --max...

    com.mysql.jdbc.PacketTooBigException: Packet for query is too large (11087 > 102

    2. **增大`max_allowed_packet`参数**:在MySQL服务器配置中,可以增加`max_allowed_packet`的值,以允许更大的数据包。这个参数控制了服务器接受的最大数据包大小。可以通过修改my.cnf配置文件,增加如下设置: ``...

    影响MySQL性能的五大配置参数

    `max_packet_allowed`设定最大数据包大小,确保能容纳大数据集的传输。`aborted_connects`计数器的监控有助于识别连接失败的问题。而`thread_cache_size`则关乎线程缓存,预创建线程可以提高响应速度,但过多的线程...

    mysql导入数据库ERROR 1231 (42000)错误.docx

    1. **临时设置**:在MySQL命令行中执行`set max_allowed_packet=1024M;`,这将只对当前会话有效。然后你可以尝试再次执行`source ./xxxx.sql;`来导入你的SQL脚本。 2. **永久修改配置**:如果MySQL版本不支持在线...

    全国手机号码段归属地数据库(记录条数共415284条记录)

    全国手机号码段归属地数据库,mysql 批量导入脚本。 若导入时报错,ERROR 2006 (HY000):MySQL server has gone away 。...如果值比较小,可以设置大一点:set global max_allowed_packet=1024*1024*16;

    88秒插入1000万条数据到MySQL数据库表的操作方法

    我用到的数据库为,mysql数据库5.7版本的 首先自己准备好数据库表 ... You can change this value on the server by setting the max_allowed_packet’ variable. 出现上面的错误是因为数据库表的 max_allowe

Global site tag (gtag.js) - Google Analytics