J'ai un problème avec les champs BLOB dans ma base de données MySQL. Lorsque je télécharge des fichiers d'une taille supérieure à environ 1 Mo, j'obtiens une erreur. Packets larger than max_allowed_packet are not allowed.
Voici ce que j'ai essayé :
Dans le MySQL Query Browser, j'ai lancé une commande show variables like 'max_allowed_packet'
ce qui m'a donné 1048576.
Puis j'exécute la requête set global max_allowed_packet=33554432
suivi par show variables like 'max_allowed_packet'
- il me donne 33554432 comme prévu.
Mais lorsque je redémarre le serveur MySQL, il revient comme par magie à 1048576. Qu'est-ce que je fais de mal ici ?
Question bonus, est-il possible de compresser un champ BLOB ?
1 votes
Un champ BLOB est un Binary Large OBject. Ce ne sont que des bits. Donc oui, vous pouvez compresser le contenu, et cela donne d'autres bits (et, espérons-le, moins) que vous stockez dans le champ BLOB à la place. Cela change simplement les données que vous y mettez. Vous devrez également décompresser le contenu de la BLOB lorsque vous en aurez à nouveau besoin.
0 votes
Ok merci, j'avais espéré qu'une fonction de compression intégrée à mysql existait.
1 votes
Duplicata possible de Erreur MySQL 1153 - Un paquet de données plus grand que le nombre d'octets autorisé par l'option 'max_allowed_packet' a été reçu
0 votes
dba.stackexchange.com/questions/45087/