Mysql
 sql >> Base de données >  >> RDS >> Mysql

comment vérifier et définir la variable mysql max_allowed_packet

max_allowed_packet est défini dans la configuration mysql, pas du côté php

[mysqld]
max_allowed_packet=16M 

Vous pouvez voir sa valeur actuelle dans mysql comme ceci :

SHOW VARIABLES LIKE 'max_allowed_packet';

Vous pouvez essayer de le modifier comme ceci, mais il est peu probable que cela fonctionne sur l'hébergement mutualisé :

SET GLOBAL max_allowed_packet=16777216;

Vous pouvez lire à ce sujet ici http://dev .mysql.com/doc/refman/5.1/en/packet-too-large.html

MODIFIER

Le [mysqld] est nécessaire pour faire le max_allowed_packet fonctionne depuis au moins mysql version 5.5.

Récemment configuré une instance sur AWS EC2 avec Drupal et Solr Search Engine, qui nécessitait 32 Mo de max_allowed_packet . Si vous définissez la valeur sous [mysqld_safe] (qui sont les paramètres par défaut fournis avec l'installation de mysql) en mode /etc/my.cnf, cela n'a pas fonctionné. Je n'ai pas creusé le problème. Mais après l'avoir changé en [mysqld] et redémarré mysqld, cela a fonctionné.