Maison > base de données > tutoriel mysql > Pourquoi ma connexion PHP MySQL expire-t-elle après 60 secondes ?

Pourquoi ma connexion PHP MySQL expire-t-elle après 60 secondes ?

Linda Hamilton
Libérer: 2024-11-21 20:59:11
original
407 Les gens l'ont consulté

Why Does My PHP MySQL Connection Timeout After 60 Seconds?

Problème : délai d'attente de connexion au serveur MySQL après 60 secondes, erreur "Le serveur MySQL a disparu - dans exactement 60 secondes"

Le problème décrit provient d'un timeout lié à l'option PHP mysql.connect_timeout. Cette option affecte non seulement le délai d'expiration de la connexion, mais également le temps nécessaire pour recevoir la première réponse du serveur MySQL.

Cause première :

L'option mysql.connect_timeout est généralement défini sur 60 secondes par défaut. Lorsqu'un script PHP exécute une requête qui prend plus de 60 secondes à s'exécuter sur le serveur MySQL, le script PHP expirera et générera l'erreur « Le serveur MySQL est parti ».

Solution :

Pour résoudre ce problème, augmentez l'option mysql.connect_timeout à une valeur supérieure au temps d'exécution attendu de votre requête. Cela permettra au script PHP d'attendre plus longtemps une réponse du serveur avant d'expirer.

Vous pouvez modifier l'option mysql.connect_timeout en utilisant la fonction ini_set() dans votre script PHP :

ini_set('mysql.connect_timeout', 300); // Set to 300 seconds
ini_set('default_socket_timeout', 300); // Set the socket timeout to match the connect timeout
Copier après la connexion

En augmentant l'option mysql.connect_timeout, vous prolongez efficacement le délai d'attente pour que le script PHP reçoive une réponse du serveur MySQL, évitant ainsi le message "Le serveur MySQL a disparu". erreur.

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!

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