max_allowed_packet
é definido na configuração do mysql, não no lado do php [mysqld]
max_allowed_packet=16M
Você pode ver seu valor atual no mysql assim:
SHOW VARIABLES LIKE 'max_allowed_packet';
Você pode tentar alterá-lo assim, mas é improvável que isso funcione na hospedagem compartilhada:
SET GLOBAL max_allowed_packet=16777216;
Você pode ler sobre isso aqui http://dev .mysql.com/doc/refman/5.1/en/packet-too-large.html
EDITAR
O [mysqld] é necessário para fazer o
max_allowed_packet
trabalhando desde pelo menos a versão 5.5 do mysql. Configure recentemente uma instância no AWS EC2 com Drupal e Solr Search Engine, que exigiu 32 milhões de
max_allowed_packet
. Se você definir o valor em [mysqld_safe]
(que é a configuração padrão que veio com a instalação do mysql) no modo /etc/my.cnf, não funcionou. Não me aprofundei no problema. Mas depois de mudar para [mysqld]
e reiniciei o mysqld, funcionou.