Comment résoudre l'erreur de déconnexion du serveur MySQL : "Le serveur MySQL a disparu"
Lors de l'insertion de bases de données, l'erreur "Erreur générale : 2006 MySQL server has gone away" peut se produire, en particulier après le traitement d'un nombre spécifique d'enregistrements.
Cause :
La cause première de ce problème est généralement liée au problème de MySQL. variable wait_timeout. Lorsque MySQL attend plus longtemps que le délai d'attente spécifié pour une réponse du client, il met fin à la connexion.
Solution :
Pour résoudre ce problème, vous pouvez modifier le variable de session wait_timeout avant d'exécuter la requête d'insertion :
<code class="php">$results = $db->query("SET session wait_timeout=28800", FALSE);</code>
En définissant wait_timeout sur une valeur plus grande (dans ce cas, 28 800 secondes ou 8 heures), MySQL accordera plus de temps au processus d'insertion avant de se terminer. la connexion.
Considérations supplémentaires :
<code class="php">$results = $db->query("SET session interactive_timeout=28800", FALSE);</code>
Cette modification peut empêcher MySQL de mettre fin à la connexion en raison d'une inactivité pendant le processus d'insertion.
Vérification :
<code class="php">$results = $db->query("SHOW VARIABLES LIKE '%timeout%'", TRUE); echo "<pre class="brush:php;toolbar:false">"; var_dump($results); echo "";
Ce code affichera les paramètres actuels des variables wait_timeout et interactive_timeout pour confirmer qu'ils ont été modifiés.
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!