嗨,我收到错误消息:
[1153] Got a packet bigger than 'max_allowed_packet'bytes
但是我没有对我的源代码进行任何更改,托管表明它们在服务器设置方面没有进行任何更改。
我不知道发生了什么 但是我试图找到原因。
那么,如何max_allowed_packet通过php脚本检查mysql变量?
并且可以在源代码中进行设置吗?
max_allowed_packet 在mysql配置中设置,而不是在php端设置
[mysqld] max_allowed_packet=16M 您可以在mysql中看到它的当前值,如下所示:
SHOW VARIABLES LIKE 'max_allowed_packet'; 您可以尝试像这样更改它,但是这不太可能在共享主机上起作用:
SET GLOBAL max_allowed_packet=16777216; 您可以在这里阅读有关它的信息http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html
编辑
max_allowed_packet至少从mysql 5.5版开始,[mysqld]是运行该程序所必需的。
最近,使用Drupal和Solr搜索引擎在AWS EC2上设置了一个实例,该实例需要32M max_allowed_packet。您[mysqld_safe]在/etc/my.cnf中的(默认设置是mysql安装随附的)模式下设置值,则没有任何效果。我没有研究这个问题。但是在我将其更改为[mysqld]并重新启动mysqld之后,它开始工作了。来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。