Maison > base de données > tutoriel mysql > Pourquoi ma connexion MySQL échoue-t-elle avec l'erreur 2006 (« MySQL Server Has Gone Away ») et comment puis-je y remédier ?

Pourquoi ma connexion MySQL échoue-t-elle avec l'erreur 2006 (« MySQL Server Has Gone Away ») et comment puis-je y remédier ?

Susan Sarandon
Libérer: 2024-12-14 04:37:14
original
172 Les gens l'ont consulté

Why Does My MySQL Connection Fail with Error 2006 (

Comprendre et résoudre l'erreur MySQL 2006 : "MySQL Server Has Gone Away"

Lors de l'exécution d'un serveur qui traite des fichiers et des rapports les résultats sur un serveur MySQL distant, les utilisateurs peuvent rencontrer l'erreur "2006, le serveur MySQL a disparu". Cela indique que la connexion au serveur a été interrompue de manière inattendue et prématurée.

Contrairement aux hypothèses courantes, le problème n'est généralement pas lié au paramètre wait_timeout. Au lieu de cela, la solution réside dans un autre paramètre MySQL : max_allowed_packet.

max_allowed_packet : la clé de la résolution

Le paramètre max_allowed_packet par défaut, souvent trouvé aussi bas que 4 Mo (4 194 304 octets) peuvent être insuffisants pour traiter des paquets de données volumineux. Lorsque la charge utile des données dépasse cette limite, le serveur se déconnecte, provoquant l'erreur « Le serveur MySQL est parti ».

Pour résoudre ce problème, augmentez la valeur max_allowed_packet dans la section [mysqld] du fichier /etc/my. fichier de configuration cnf sur votre serveur. Un paramètre de 8 ou 16 Mo est généralement suffisant.

Par exemple :

[mysqld]
...
max_allowed_packet=16M
...
Copier après la connexion

Vous pouvez également utiliser la commande suivante pour définir le paramètre de manière dynamique (les modifications seront perdues au redémarrage) :

SET GLOBAL max_allowed_packet=104857600;
Copier après la connexion

Supplémentaire Remarques :

  • Assurez-vous que le fichier my.cnf est enregistré avec le codage ANSI (et non UTF-8) sur les systèmes Windows.
  • Sous Windows, le fichier my.ini Le fichier devra peut-être être modifié à la place.
  • Si l'erreur persiste après l'ajustement de max_allowed_packet, envisagez de vérifier d'autres paramètres MySQL tels que read_timeout et wait_timeout.

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