Possible Duplicate:
MySQL Error 1153 - Got a packet bigger than ‘max_allowed_packet’ bytes

嗨,我得到了错误信息:

[1153] Got a packet bigger than 'max_allowed_packet'bytes

但是我没有对我的源代码进行任何更改,并且宿主声明他们没有对服务器设置进行任何更改.

我不知道发生了什么.但我正在努力寻找原因.

那么,如何通过php脚本判断max_allowed_packet个mysql变量呢?

有没有可能在源代码中设置它?

推荐答案

max_allowed_packet

[mysqld]
max_allowed_packet=16M 

您可以在mysql中看到它的当前价值,如下所示:

SHOW VARIABLES LIKE 'max_allowed_packet';

您可以try 这样更改,但这不太可能在共享主机上起作用:

SET GLOBAL max_allowed_packet=16777216;

你可以在这里读到http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html

EDIT

[mysqld]是使max_allowed_packet正常工作所必需的,因为至少mysql版本是5.5.

最近使用Drupal和Solr搜索引擎在AWS EC2上设置了一个实例,需要32M max_allowed_packet.如果在/etc/my中设置[mysqld_safe](这是mysql安装附带的默认设置)模式下的值.cnf,没用.我没有深入研究这个问题.但在我将其更改为[mysqld]并重新启动mysqld后,它成功了.

Php相关问答推荐

shell_exec()在后台执行nohup时不会立即返回

提交表格后的重定向不起作用

启用额外的WooCommerce产品库存位置

在WooCommerce产品档案页面中显示产品销售百分比

根据用户组或登录状态显示或隐藏定价后添加的文本

如何优化-PHP 7.3.14+Laravel 6

WooCommerce数量减号和加号图标未显示

将WooCommerce WC_Order对象与wp_Schedule_Event一起使用

在PHP中处理Linux输入事件(/dev/input/Event*)

即使在WooCommerce购物车中添加了两次产品,也要将所有项目设置为空白行

打折时更改 Woocommerce 产品名称

启用 WooCommerce 我的帐户付款方式,允许客户添加付款方式

如何将不同的 Woocommerce 费用合并为一个名称?

在php中计算两个没有假期的日期之间的小时差

根据所选付款方式启用/禁用 WooCommerce 所需的 checkout 字段

根据页面的最后修订日期设置 MediaWiki 内部链接的样式

防止使用woocommerce_checkout_process下单

php var_dump(1) 返回字符串(4)

带有 nginx 的 Symfony 不提供 .js 和 .css 文件

如何将数字文本文件添加到 PHP 数学方程式中?