Maison > base de données > tutoriel mysql > le corps du texte

Pourquoi mon script PHP utilisant PDO continue-t-il à recevoir une erreur « Le serveur MySQL a disparu » après plusieurs exécutions réussies ?

Patricia Arquette
Libérer: 2024-11-21 08:23:12
original
333 Les gens l'ont consulté

Why does my PHP script using PDO keep getting a

Script PHP avec PDO rencontrant l'erreur "MySQL Server Has Gone Away"

Un script effectuant des tâches nocturnes est confronté à un problème où PDO a préparé des instructions échoue avec l'erreur "Le serveur MySQL est parti" après plusieurs exécutions réussies. La cause première de ce problème réside souvent dans le dépassement de la taille maximale autorisée des paquets définie pour MySQL.

Solution : Ajuster la configuration du serveur

Pour résoudre l'erreur, il est nécessaire pour ajuster le paramètre max_allowed_packet dans le fichier de configuration MySQL (my.ini). Ce paramètre spécifie la taille maximale des paquets que le serveur peut gérer. Dans le scénario donné, le problème survient probablement lors de la tentative d'insertion d'un BLOB plus grand que la taille autorisée.

Messages d'erreur et sortie de l'enregistreur

Lorsque ce problème se produit, le côté client affiche le message d'erreur "Le serveur MySQL a disparu." De plus, le journal du serveur peut contenir l'erreur suivante si la journalisation des erreurs est activée :

Error 1153 Got a packet bigger than 'max_allowed_packet' bytes
Copier après la connexion

Ajustement de la configuration

Pour résoudre ce problème, déterminez la taille du plus grand BLOB qui sera inséré et défini max_allowed_packet dans my.ini en conséquence. Par exemple, si la plus grande taille du BLOB est estimée à 200 Mo, la configuration peut être ajustée comme suit :

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

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