我必须改变 max_allowed_packet
大小,在MySQL中使用 phpmyadmin
但我不知道该怎么做。当我尝试 set global max_allowed_packet=10M
在 phpmyadmin
它给出了这样的错误信息
#1227 - Access denied; you need the SUPER privilege for this operation
我无法获得超级权限,因为服务器不在我的控制范围内。
那么,我怎样才能改变它呢?
你不能这样做.
要动态地改变它, 就像使用 SET
你试过了,你需要 SUPER
特权,这是没有办法的事情。这是件好事,因为 1. 这个设置是全局性的,这意味着它影响了 都 它可能会危及服务器(例如,它使服务器更容易被DoS)。
要永久地设置它,你需要访问MySQL配置文件,并且能够重新启动服务,正如Zak所建议的那样。
然而,真正的问题是,为什么你需要这么高的限制。除非你试图导入一个大的dump,否则需要这样的限制几乎总是表明有些东西一开始就设计错了。如果你正在导入一个dump,请尝试一次导入较小的比特。
你必须在MySQL中也设置这个......一般在这里找到。
/etc/mysql/my.cnf
例如:
max_allowed_packet = 16M
如果服务器不是在你的控制,你将不得不要求访问所述文件。
你可以在 "服务器变量和设置 "页面中更改变量,可以通过顶部的 "变量 "或[server]phpmyadminserver_variables.php进行访问。
查找 "max_allowed_packet",然后点击 "编辑"--默认值是 4194304
(4MB,单位:字节)。