Maison > base de données > tutoriel mysql > Pourquoi est-ce que je reçois le message « Erreur lors de l'envoi du paquet QUERY » lors de l'insertion de données volumineuses dans une base de données MySQL ?

Pourquoi est-ce que je reçois le message « Erreur lors de l'envoi du paquet QUERY » lors de l'insertion de données volumineuses dans une base de données MySQL ?

Barbara Streisand
Libérer: 2024-11-26 18:14:11
original
907 Les gens l'ont consulté

Why am I getting the

Dépannage « Erreur lors de l'envoi du paquet QUERY »

Lors de la tentative d'insertion de données dans une base de données, vous pouvez rencontrer le message « Erreur lors de l'envoi du paquet QUERY ». Examinons le problème et sa solution.

Le code fourni utilise PDO pour préparer et exécuter une requête permettant d'insérer des données dans une colonne définie comme texte long. Cependant, l'erreur suggère que la taille des données dépasse une limite.

MySQL impose une restriction sur la taille maximale des paquets de données pouvant être envoyés lors d'une requête. Par défaut, cette limite est de 16 Mo. Le texte long devrait théoriquement prendre en charge des données jusqu'à 4 Go.

Le problème survient lorsque les données insérées sont plus volumineuses que la taille de paquet autorisée. MySQL envoie des données par paquets, et si le paquet ne peut pas contenir l'intégralité des données, cela entraîne une "Erreur lors de l'envoi du paquet QUERY."

Solution :

Pour résoudre ce problème, vous avez deux options :

  1. Diviser la requête en morceaux plus petits : Diviser les données excessives dans de multiples insertions. Chaque insertion doit être dans la limite de taille de paquet autorisée.
  2. Augmentez la taille max_allowed_packet : Exécutez la commande suivante pour augmenter la taille maximale des paquets :
SET GLOBAL max_allowed_packet=524288000;
Copier après la connexion

Cette commande définit la taille max_allowed_packet à 500 Mo, ce qui devrait suffire pour la plupart des scénarios. N'oubliez pas de réinitialiser la valeur par défaut après avoir inséré les données pour éviter toute surcharge potentielle en termes de performances.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal