max_allowed_packet
è impostato nella configurazione di MySQL, non sul lato php
[mysqld]
max_allowed_packet=16M
Puoi vedere il suo valore corrente in mysql in questo modo:
SHOW VARIABLES LIKE 'max_allowed_packet';
Puoi provare a cambiarlo in questo modo, ma è improbabile che funzioni su hosting condiviso:
SET GLOBAL max_allowed_packet=16777216;
Puoi leggerlo qui http://dev .mysql.com/doc/refman/5.1/en/packet-too-large.html
MODIFICA
Il [mysqld] è necessario per creare il max_allowed_packet
funzionante almeno dalla versione MySQL 5.5.
Configurare di recente un'istanza su AWS EC2 con Drupal e Solr Search Engine, che ha richiesto 32 milioni di max_allowed_packet
. Se imposti il valore in [mysqld_safe]
(che sono le impostazioni predefinite fornite con l'installazione di mysql) in /etc/my.cnf, non ha funzionato. Non ho approfondito il problema. Ma dopo averlo cambiato in [mysqld]
e riavviato mysqld, ha funzionato.