`

MySQL 'max_allowed_packet'

 
阅读更多
安装opencms使用mysql数据库时,出现错误

MySQL system variable 'max_allowed_packet' is set to 1048576 Byte (1MB).

Please note that it will not be possible for OpenCms to handle files bigger than this value in the VFS.
 
    Error while checking the server configuration!

-------------------------------------------

Your 'max_allowed_packet' variable is set to less than 16777216 Byte (16MB).

The required value for running OpenCms is at least 16MB.Please change your MySQL configuration (in the my.ini or my.cnf file).

 
 

解决如下:



这个问题是因为导入的sql文件大于系统默认的max_allowed_packet的值,解决方法:比如在my.cnf修改增加到:max_allowed_packet=16M #或者更高,当然也可以在mysqld启动的时候加入这个参数,但是该变量必须在mysqld重新启动的时候才加载生效,所以必须重起mysqld!


参见兄弟博客是把
max_allowed_packet参数加载到了mysql启动文件mysqld中,mysqld文件部分设置如下:


${MYSQL}/bin/mysqld --user=mysql --datadir=${MYSQL}/data "$@" \

--language=${MYSQL}/share/mysql/english -O max_connections=500 -O wait_timeout=600 \

-O key_buffer=32M --max_allowed_packet=32M --port=${port} --socket=/tmp/mysql.sock &



其中 --max_allowed_packet=32M必须有前面的――符号。



关于max_allowed_packet一些资料:



许多MySQL程序有一些内部变量可以在运行时设置。程序变量的设置与带有值的其它长选项相同。



例如,mysql有一个max_allowed_packet变量,可以控制其通信缓冲区的最大长度。要想为mysql将max_allowed_packet变量的值设置为16MB,使用下面的任何一个命令:



shell> mysql --max_allowed_packet=16777216

shell> mysql --max_allowed_packet=16M



第1个命令以字节指定值。第2个命令以兆字节指定值。变量值可以有一个后缀K、M或者G(可以为大写或小写)来表示千字节、兆字节或者十亿字节的单位。



在选项文件中,变量设定值没有引导破折号:

[mysql]

max_allowed_packet=16777216

或:

[mysql]

max_allowed_packet=16M



如果你喜欢,变量名的下划线可以为破折号。



注:max_allowed_packet参数是在mysql4以后才有的,在mysql4以前版本,还没有这个参数



此外,还可以通过再/etc/增加my.cnf文件,在my.cnf中设置max_allowed_packet=16M,然后重启mysql也可.至于my.cnf的获得,可以从mysql主目录的support-files下通过更改模版得到.

分享到:
评论

相关推荐

    mysql5.7 修改max_allowed_packet方法

    ### MySQL 5.7 中 max_allowed_packet 参数的理解与调整 #### 一、max_allowed_packet 参数简介 在MySQL数据库中,`max_allowed_packet` 参数用于控制客户端与服务器之间单个数据包的最大大小。此参数对诸如大BLOB...

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

    MySQL max_allowed_packet过小引起的问题报错如下com.mysql.jdbc.PacketTooBigException: 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...

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

    在MySQL数据库系统中,`max_allowed_packet`是一个关键的系统变量,它决定了服务器能够处理的最大数据包大小。这个参数主要用于限制单次传输的数据量,包括INSERT、UPDATE等操作中的大块数据,以及LOAD DATA INFILE...

    my.cn基本配置

    max_allowed_packet=100M # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld_safe] log-...

    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导入数据库ERROR 1231 (42000)错误.docx

    2. **永久修改配置**:如果MySQL版本不支持在线修改`max_allowed_packet`,你需要编辑MySQL的配置文件,例如在Linux系统中通常是`/etc/my.cnf`或者`/opt/my.cnf`。打开配置文件,添加或修改`max_allowed_packet`的值...

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

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

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

    我们可以通过语句查看一下允许的最大包大小:show global variables like 'max_allowed_packet'; MySQL使用最大数据包站站点进行服务器和客户端之间的通信。如果语句包含大字段,则可能由于SQL语句的大小,而被中止...

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

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

    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